> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# ResetPasswordMfaWebAuthnRoamingChallenge

> Describe todas las propiedades y métodos disponibles para personalizar la pantalla `reset-password-mfa-webauthn-roaming-challenge` de Universal Login.

La clase ResetPasswordMfaWebAuthnRoamingChallenge implementa la funcionalidad de la pantalla `reset-password-mfa-webauthn-roaming-challenge`. Esta pantalla pide al usuario que verifique su identidad mediante una clave de seguridad de itinerancia (como una clave USB FIDO2) como parte del paso de MFA durante un flujo de restablecimiento de contraseña.

<Frame>
  <img style={{maxHeight:"400px"}} src="https://mintcdn.com/translations/xwVvTWJUElMm5YAK/docs/images/cdy7uua7fh8z/oisvWlYTRgpQ030322WZk/23921a030cdb6f1cf7b147da5315ea8e/Screenshot_2025-05-28_at_13.12.43.png?fit=max&auto=format&n=xwVvTWJUElMm5YAK&q=85&s=7275f40c4d91a64dbd6fc5624910a563" alt="" width="363" height="492" data-path="docs/images/cdy7uua7fh8z/oisvWlYTRgpQ030322WZk/23921a030cdb6f1cf7b147da5315ea8e/Screenshot_2025-05-28_at_13.12.43.png" />
</Frame>

<div id="constructors">
  ## Constructores
</div>

Cree una instancia del administrador de la pantalla `ResetPasswordMfaWebAuthnRoamingChallenge`:

```typescript Example theme={null}
import ResetPasswordMfaWebAuthnRoamingChallenge from '@auth0/auth0-acul-js/reset-password-mfa-webauthn-roaming-challenge';
const resetPasswordMfaWebAuthnRoamingChallengeManager = new ResetPasswordMfaWebAuthnRoamingChallenge();
try {
  await resetPasswordMfaWebAuthnRoamingChallengeManager.useSecurityKey({
    rememberDevice: true,
  });
} catch (error) {
  if (error instanceof DOMException) {
    await resetPasswordMfaWebAuthnRoamingChallengeManager.showError({
      error: { name: error.name, message: error.message },
    });
  }
}
```

<div id="properties">
  ## Propiedades
</div>

<ParamField body="branding" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/BrandingMembers">BrandingMembers</a></span>}>
  Proporciona configuraciones relacionadas con la marca, como el tema y otros ajustes de marca.
</ParamField>

<ParamField body="client" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/ClientMembers">ClientMembers</a></span>}>
  Proporciona configuraciones relacionadas con el cliente, como `id`, `name` y `logoUrl`, para la pantalla `reset-password-mfa-webauthn-roaming-challenge`.
</ParamField>

<ParamField body="organization" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/OrganizationMembers">OrganizationMembers</a></span>}>
  Proporciona información sobre la organización del usuario, como `id` y `name`.
</ParamField>

<ParamField body="prompt" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/PromptMembers">PromptMembers</a></span>}>
  Contiene datos sobre la pantalla actual del flujo de autenticación.
</ParamField>

<ParamField body="screen" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/ScreenMembersOnResetPasswordMfaWebAuthnRoamingChallenge">ScreenMembersOnResetPasswordMfaWebAuthnRoamingChallenge</a></span>}>
  Contiene detalles específicos de la pantalla `reset-password-mfa-webauthn-roaming-challenge`, incluida su configuración y contexto.
</ParamField>

<ParamField body="tenant" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/TenantMembers">TenantMembers</a></span>}>
  Contiene datos relacionados con el inquilino, como `id` y los metadatos asociados.
</ParamField>

<ParamField body="transaction" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/TransactionMembers">TransactionMembers</a></span>}>
  Proporciona datos específicos de la transacción para la pantalla `reset-password-mfa-webauthn-roaming-challenge`, como identificadores activos y estados del flujo.
</ParamField>

<ParamField body="untrustedData" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/UntrustedDataMembers">UntrustedDataMembers</a></span>}>
  Contiene datos no confiables que se pasan al SDK, como la entrada del usuario durante el flujo de desafío MFA.
</ParamField>

<ParamField body="user" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/UserMembers">UserMembers</a></span>}>
  Detalles del usuario activo, incluidos `username`, `email` y `roles`.
</ParamField>

<div id="methods">
  ## Métodos
</div>

<ParamField body="changeLanguage" type="Promise<void>">
  Este método cambia el idioma que se muestra en la página de Universal Login.

  ```typescript Example theme={null}
  import ResetPasswordMfaWebAuthnRoamingChallenge from '@auth0/auth0-acul-js/reset-password-mfa-webauthn-roaming-challenge';
  const resetPasswordMfaWebAuthnRoamingChallengeManager = new ResetPasswordMfaWebAuthnRoamingChallenge();
  resetPasswordMfaWebAuthnRoamingChallengeManager.changeLanguage({
    language: 'fr',
  });
  ```

  **Parámetros del método**

  <Expandable title="Parámetros">
    <ParamField body="options">
      [LanguageChangeOptions](/es/docs/libraries/acul/js-sdk/Screens/interfaces/LanguageChangeOptions).
    </ParamField>

    <ParamField body="language" type="string" required>
      El código de configuración regional del idioma deseado (por ejemplo, `'en'`, `'fr'`, `'es'`).
    </ParamField>

    <ParamField body="persist?" type="&#x22;session&#x22;">
      Cuando se establece como `'session'`, el idioma seleccionado se conserva durante toda la sesión.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="getErrors" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/Error">Error</a>[]</span>}>
  Este método obtiene el array de errores de la transacción desde el contexto, o un array vacío si no hay ninguno.
</ParamField>

<ParamField body="showError" type="Promise<void>">
  Este método notifica a Auth0 un error de WebAuthn en el navegador, como una cancelación del usuario (`NotAllowedError`) o un tiempo de espera de `navigator.credentials.get()`.

  ```typescript Example theme={null}
  import ResetPasswordMfaWebAuthnRoamingChallenge from '@auth0/auth0-acul-js/reset-password-mfa-webauthn-roaming-challenge';
  const resetPasswordMfaWebAuthnRoamingChallengeManager = new ResetPasswordMfaWebAuthnRoamingChallenge();
  await resetPasswordMfaWebAuthnRoamingChallengeManager.showError({
    error: { name: error.name, message: error.message },
  });
  ```

  **Parámetros del método**

  <Expandable title="Parámetros">
    <ParamField body="options">
      [ResetPasswordMfaWebAuthnRoamingChallengeShowErrorOptions](/es/docs/libraries/acul/js-sdk/Screens/interfaces/ResetPasswordMfaWebAuthnRoamingChallengeShowErrorOptions).
    </ParamField>

    <ParamField body="error" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/WebAuthnErrorDetails">WebAuthnErrorDetails</a></span>} required>
      El objeto de error de la API de WebAuthn (`navigator.credentials.get()`) que se va a notificar.

      <ParamField body="name" type="string" required>
        El nombre del error (por ejemplo, `'NotAllowedError'`).
      </ParamField>

      <ParamField body="message" type="string" required>
        El mensaje de error que describe el problema.
      </ParamField>
    </ParamField>

    <ParamField body="rememberDevice?" type="boolean">
      Cuando es `true`, conserva la preferencia de recordar el dispositivo junto con el informe del error.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="tryAnotherMethod" type="Promise<void>">
  Este método permite al usuario seleccionar otro método de MFA para completar el desafío.

  ```typescript Example theme={null}
  import ResetPasswordMfaWebAuthnRoamingChallenge from '@auth0/auth0-acul-js/reset-password-mfa-webauthn-roaming-challenge';
  const resetPasswordMfaWebAuthnRoamingChallengeManager = new ResetPasswordMfaWebAuthnRoamingChallenge();
  await resetPasswordMfaWebAuthnRoamingChallengeManager.tryAnotherMethod();
  ```

  **Parámetros del método**

  <Expandable title="Parámetros">
    <ParamField body="options">
      [ResetPasswordMfaWebAuthnRoamingChallengeTryAnotherMethodOptions](/es/docs/libraries/acul/js-sdk/Screens/interfaces/ResetPasswordMfaWebAuthnRoamingChallengeTryAnotherMethodOptions).
    </ParamField>

    <ParamField body="rememberDevice?" type="boolean">
      Cuando es `true`, conserva la preferencia de recordar el dispositivo al cambiar de método.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="useSecurityKey" type="Promise<void>">
  Este método inicia el desafío de WebAuthn con clave de seguridad y envía la credencial resultante para completar el paso de MFA durante el flujo de restablecimiento de contraseña. Si el navegador lanza una `DOMException` (por ejemplo, si el usuario cancela la operación), captura el error y llama a `showError` para notificar a Auth0.

  ```typescript Example theme={null}
  import ResetPasswordMfaWebAuthnRoamingChallenge from '@auth0/auth0-acul-js/reset-password-mfa-webauthn-roaming-challenge';
  const resetPasswordMfaWebAuthnRoamingChallengeManager = new ResetPasswordMfaWebAuthnRoamingChallenge();
  try {
    await resetPasswordMfaWebAuthnRoamingChallengeManager.useSecurityKey({
      rememberDevice: true,
    });
  } catch (error) {
    if (error instanceof DOMException) {
      await resetPasswordMfaWebAuthnRoamingChallengeManager.showError({
        error: { name: error.name, message: error.message },
      });
    }
  }
  ```

  **Parámetros del método**

  <Expandable title="Parámetros">
    <ParamField body="options">
      [ResetPasswordMfaWebAuthnRoamingChallengeUseSecurityKeyOptions](/es/docs/libraries/acul/js-sdk/Screens/interfaces/ResetPasswordMfaWebAuthnRoamingChallengeUseSecurityKeyOptions).
    </ParamField>

    <ParamField body="rememberDevice?" type="boolean">
      Cuando es `true`, marca el dispositivo como de confianza para que no se solicite MFA de nuevo en este dispositivo al usuario.
    </ParamField>
  </Expandable>
</ParamField>
