> ## 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.

# MfaPushChallengePush

> Describe todas las propiedades y los métodos disponibles para personalizar la pantalla `mfa-push-challenge-push` de Universal Login.

La clase MfaPushChallengePush implementa la funcionalidad de la pantalla `mfa-push-challenge-push`. Esta pantalla se muestra cuando un usuario debe confirmar una notificación push durante MFA.

<Frame>
  <img style={{maxHeight:"400px"}} src="https://mintcdn.com/translations/MQijxVxM0qBMv291/docs/images/ja-jp/cdy7uua7fh8z/6n6fftBZDpoT5FdmipebK6/3a777c3c9a87a6f6cf53cf96aab67c8d/Screenshot_2025-02-20_at_22.13.55.png?fit=max&auto=format&n=MQijxVxM0qBMv291&q=85&s=743ce511b66aa4bb6ce29a2e249702ca" alt="ACUL MFA Push Challenge Push" width="438" height="670" data-path="docs/images/ja-jp/cdy7uua7fh8z/6n6fftBZDpoT5FdmipebK6/3a777c3c9a87a6f6cf53cf96aab67c8d/Screenshot_2025-02-20_at_22.13.55.png" />
</Frame>

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

Cree una instancia del administrador de la pantalla MFA Push Challenge Push:

```typescript Example theme={null}
import MfaPushChallengePush from '@auth0/auth0-acul-js/mfa-push-challenge-push';

const mfaPushChallengePush = new MfaPushChallengePush();
await mfaPushChallengePush.continue();
```

<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 configuración relacionada 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 configuración relacionada con el cliente, como `id`, `name` y `logoUrl`, para la pantalla `mfa-push-challenge-push`.
</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 en el flujo de autenticación.
</ParamField>

<ParamField body="screen" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/ScreenMembersOnMfaPushChallengePush">ScreenMembersOnMfaPushChallengePush</a></span>}>
  Contiene detalles específicos de la pantalla `mfa-push-challenge-push`, 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 `mfa-push-challenge-push`, como identificadores activos y estados del flujo.
</ParamField>

<ParamField body="untrustedData" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/UntrustedDataMembersOnMfaPushChallengePush">UntrustedDataMembersOnMfaPushChallengePush</a></span>}>
  Gestiona los datos no confiables que se pasan al SDK, como la entrada del usuario durante el desafío de MFA push.
</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 de visualización de la página de Universal Login.

  ```typescript Example theme={null}
  import MfaPushChallengePush from '@auth0/auth0-acul-js/mfa-push-challenge-push';
  const mfaPushChallengePush = new MfaPushChallengePush();
  mfaPushChallengePush.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 en `'session'`, el idioma seleccionado se mantiene durante toda la sesión.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="continue" type="Promise<void>">
  Este método continúa con el desafío de notificación push.

  ```typescript Example theme={null}
  import MfaPushChallengePush from '@auth0/auth0-acul-js/mfa-push-challenge-push';

  const mfaPushChallengePush = new MfaPushChallengePush();
  await mfaPushChallengePush.continue();
  ```

  **Parámetros del método**

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

    <ParamField body="rememberDevice?" type="boolean">
      Indica si se debe recordar el dispositivo.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="enterCodeManually" type="Promise<void>">
  Este método cambia a la introducción manual del código de verificación.

  ```typescript Example theme={null}
  import MfaPushChallengePush from '@auth0/auth0-acul-js/mfa-push-challenge-push';

  const mfaPushChallengePush = new MfaPushChallengePush();
  await mfaPushChallengePush.enterCodeManually();
  ```
</ParamField>

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

<ParamField body="pollingManager" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/MfaPushPollingControl">MfaPushPollingControl</a></span>}>
  Este método inicia y administra el sondeo de un desafío de MFA push.

  Crea una sesión de sondeo que consulta repetidamente el endpoint del desafío de MFA push en el intervalo especificado hasta que el desafío se apruebe o se produzca un error. Cuando se cumple la condición de aprobación, se invoca el callback [onCompleted](/es/docs/libraries/acul/js-sdk/Screens/type-aliases/MfaPollingOptions#oncompleted) proporcionado y el sondeo se detiene automáticamente.

  Utilice el valor devuelto [MfaPushPollingControl](/es/docs/libraries/acul/js-sdk/Screens/interfaces/MfaPushPollingControl) para iniciar, detener o comprobar el estado del proceso de sondeo en cualquier momento.

  Devuelve una instancia de [MfaPushPollingControl](/es/docs/libraries/acul/js-sdk/Screens/interfaces/MfaPushPollingControl) que expone:

  * `startPolling()` — Inicia o reanuda el sondeo.
  * `stopPolling()` — Cancela el sondeo de inmediato.
  * `isRunning()` — Indica si el sondeo está activo en ese momento.

  ```typescript Example theme={null}
  import MfaPushChallengePush from '@auth0/auth0-acul-js/mfa-push-challenge-push';

  const mfaPushChallengePush = new MfaPushChallengePush();

  // Inicia el sondeo cada 5 segundos hasta que se apruebe el desafío push
  const control = mfaPushChallengePush.pollingManager({
    intervalMs: 5000,
    onCompleted: () => mfaPushChallengePush.continue(),
    onError: (error) => console.error('Error de sondeo:', error),
  });

  // Más adelante, cancela el sondeo si es necesario
  control.stopPolling();
  ```

  **Observaciones**

  * Las respuestas HTTP 429 (límite de tasa) se gestionan internamente: el sondeo espera automáticamente hasta que se restablece el límite de tasa antes de reintentarlo.
  * Es seguro llamar a `startPolling()` varias veces; no tiene efecto si ya está en ejecución.

  **Parámetros del método**

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

    <ParamField body="intervalMs?" type="number">
      Intervalo opcional, en milisegundos, entre solicitudes de sondeo consecutivas. Si se omite, se usa el intervalo interno predeterminado del SDK (normalmente, 5000 ms).
    </ParamField>

    <ParamField body="onCompleted()?" type="() => void">
      Callback opcional que se ejecuta cuando el desafío de MFA push se aprueba correctamente y el sondeo finaliza. Se llama exactamente una vez, tras lo cual el sondeo se detiene automáticamente.
    </ParamField>

    <ParamField body="onError()?" type="(error) => void">
      Callback opcional que se invoca si se produce un error durante el sondeo. Recibe un objeto `ULError` que contiene `status` (código de estado HTTP) y `responseText` (cuerpo de la respuesta sin procesar).
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="resendPushNotification" type="Promise<void>">
  Este método vuelve a enviar la notificación push.

  ```typescript Example theme={null}
  import MfaPushChallengePush from '@auth0/auth0-acul-js/mfa-push-challenge-push';

  const mfaPushChallengePush = new MfaPushChallengePush();
  await mfaPushChallengePush.resendPushNotification();
  ```

  **Parámetros del método**

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

    <ParamField body="rememberDevice?" type="boolean">
      Indica si se debe recordar el dispositivo.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="tryAnotherMethod" type="Promise<void>">
  Este método permite al usuario intentar otro método de MFA.

  ```typescript Example theme={null}
  import MfaPushChallengePush from '@auth0/auth0-acul-js/mfa-push-challenge-push';

  const mfaPushChallengePush = new MfaPushChallengePush();
  await mfaPushChallengePush.tryAnotherMethod();
  ```
</ParamField>
