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

# MfaPushPollingControl

Interface de contrôle pour gérer une session d’interrogation d’une notification push MFA.

Cette interface fournit des méthodes impératives pour démarrer, arrêter et consulter le statut d’une
boucle d’interrogation prolongée qui vérifie si un défi par notification push a été
approuvé.

````ts Example theme={null}
export interface MfaPushPollingControl {
  /**
   * Arrête immédiatement le processus d'interrogation.
   *
   * - Annule tout minuteur planifié ou toute requête en attente.
   * - Une fois arrêté, `isRunning()` retourne `false`.
   * - Peut être appelé plusieurs fois sans problème ; les appels suivants n'ont aucun effet.
   *
   * @example
   * ```ts
   * const control = mfaPushChallengePush.pollingManager({ intervalMs: 5000 });
   * control.startPolling();
   *
   * // Plus tard, si l'utilisateur annule :
   * control.stopPolling();
   * ```
   */
  stopPolling: () => void;

  /**
   * Démarre ou reprend le processus d'interrogation.
   *
   * - Si l'interrogation est déjà active, un nouvel appel n'a aucun effet.
   * - Si elle a été arrêtée précédemment, cet appel relance la boucle d'interrogation.
   *
   * @example
   * ```ts
   * control.startPolling(); // Commence à vérifier le défi push AMF
   * ```
   */
  startPolling: () => void;

  /**
   * Indique si le processus d'interrogation est en cours d'exécution.
   *
   * - Retourne `true` si l'interrogation est active et non annulée.
   * - Retourne `false` si l'interrogation a été arrêtée ou terminée.
   *
   * @example
   * ```ts
   * if (control.isRunning()) {
   *   console.log('Interrogation en cours...');
   * } else {
   *   console.log('Interrogation arrêtée ou terminée.');
   * }
   * ```
   */
  isRunning: () => boolean;
}
````

<div id="properties">
  ## Propriétés
</div>

<ParamField body="isRunning" type="boolean">
  Indique si le processus d’interrogation est en cours.

  ```ts Example theme={null}
  if (control.isRunning()) {
    console.log('Polling in progress...');
  } else {
    console.log('Polling is stopped or completed.');
  }
  ```
</ParamField>

<ParamField body="startPolling" type="void">
  Démarre ou reprend le processus d’interrogation.

  * Si l’interrogation est déjà actif, l’appeler de nouveau n’a aucun effet.
  * S’il a déjà été arrêté, l’appeler redémarre la boucle d’interrogation.

  ```ts Example theme={null}
  control.startPolling(); // Commencer à vérifier la demande push d’AMF
  ```
</ParamField>

<ParamField body="stopPolling" type="void">
  Arrête immédiatement le processus d’interrogation.

  * Annule tout minuteur planifié ou toute requête en attente.
  * Une fois arrêté, `isRunning()` renvoie `false`.
  * Peut être appelé sans risque plusieurs fois; les appels suivants n’ont aucun effet.

  ```ts Example theme={null}
  const control = mfaPushChallengePush.pollingManager({ intervalMs: 5000 });
  control.startPolling();

  // Plus tard, si l’utilisateur annule :
  control.stopPolling();
  ```
</ParamField>
