> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-docs-event-stream-action-templates.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# MfaPushPollingControl

Control interface for managing an MFA push-notification polling session.

This interface provides imperative methods to start, stop, and inspect the status of a
long-running polling loop that checks whether an MFA push challenge has been
approved.

````ts Example theme={null}
export interface MfaPushPollingControl {
  /**
   * Stops the polling process immediately.
   *
   * - Cancels any scheduled timer or pending request.
   * - Once stopped, `isRunning()` returns `false`.
   * - Safe to call multiple times; subsequent calls have no effect.
   *
   * @example
   * ```ts
   * const control = mfaPushChallengePush.pollingManager({ intervalMs: 5000 });
   * control.startPolling();
   *
   * // Later, if the user cancels:
   * control.stopPolling();
   * ```
   */
  stopPolling: () => void;

  /**
   * Starts or resumes the polling process.
   *
   * - If polling is already active, calling this again has no effect.
   * - If previously stopped, calling this restarts the polling loop.
   *
   * @example
   * ```ts
   * control.startPolling(); // Begin checking the MFA push challenge
   * ```
   */
  startPolling: () => void;

  /**
   * Indicates whether the polling process is currently running.
   *
   * - Returns `true` if polling is active and not cancelled.
   * - Returns `false` if polling has been stopped or has completed.
   *
   * @example
   * ```ts
   * if (control.isRunning()) {
   *   console.log('Polling in progress...');
   * } else {
   *   console.log('Polling is stopped or completed.');
   * }
   * ```
   */
  isRunning: () => boolean;
}
````

## Properties

<ParamField body="isRunning" type="boolean">
  Indicates whether the polling process is currently running.

  ```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">
  Starts or resumes the polling process.

  * If polling is already active, calling this again has no effect.
  * If previously stopped, calling this restarts the polling loop.

  ```ts Example theme={null}
  control.startPolling(); // Begin checking the MFA push challenge
  ```
</ParamField>

<ParamField body="stopPolling" type="void">
  Stops the polling process immediately.

  * Cancels any scheduled timer or pending request.
  * Once stopped, `isRunning()` returns `false`.
  * Safe to call multiple times; subsequent calls have no effect.

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

  // Later, if the user cancels:
  control.stopPolling();
  ```
</ParamField>
