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

MFA プッシュ通知のポーリング セッションを管理するための制御インターフェースです。

このインターフェースは、MFA プッシュチャレンジが承認されたかどうかを確認する長時間実行のポーリング ループについて、開始、停止、状態の確認を行うための命令型メソッドを提供します。

````ts Example theme={null}
export interface MfaPushPollingControl {
  /**
   * ポーリング処理を即座に停止します。
   *
   * - スケジュール済みのタイマーまたは保留中のリクエストをキャンセルします。
   * - 停止後、`isRunning()` は `false` を返します。
   * - 複数回呼び出しても安全です。2回目以降の呼び出しは効果がありません。
   *
   * @example
   * ```ts
   * const control = mfaPushChallengePush.pollingManager({ intervalMs: 5000 });
   * control.startPolling();
   *
   * // 後でユーザーがキャンセルする場合:
   * control.stopPolling();
   * ```
   */
  stopPolling: () => void;

  /**
   * ポーリング処理を開始または再開します。
   *
   * - ポーリングがすでにアクティブな場合、再度呼び出しても効果がありません。
   * - 以前に停止していた場合、呼び出すとポーリングループが再開されます。
   *
   * @example
   * ```ts
   * control.startPolling(); // MFA プッシュチャレンジの確認を開始する
   * ```
   */
  startPolling: () => void;

  /**
   * ポーリング処理が現在実行中かどうかを示します。
   *
   * - ポーリングがアクティブでキャンセルされていない場合、`true` を返します。
   * - ポーリングが停止または完了している場合、`false` を返します。
   *
   * @example
   * ```ts
   * if (control.isRunning()) {
   *   console.log('ポーリング進行中...');
   * } else {
   *   console.log('ポーリングは停止または完了しています。');
   * }
   * ```
   */
  isRunning: () => boolean;
}
````

<div id="properties">
  ## プロパティ
</div>

<ParamField body="isRunning" type="boolean">
  ポーリング処理が現在実行中かどうかを示します。

  ```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">
  ポーリング処理を開始または再開します。

  * ポーリングがすでに実行中の場合、再度呼び出しても効果はありません。
  * 以前に停止していた場合、これを呼び出すとポーリング ループが再開されます。

  ```ts Example theme={null}
  control.startPolling(); // MFA プッシュチャレンジの確認を開始
  ```
</ParamField>

<ParamField body="stopPolling" type="void">
  ポーリング処理を直ちに停止します。

  * スケジュールされたタイマーまたは保留中のリクエストをキャンセルします。
  * 停止すると、`isRunning()` は `false` を返します。
  * 複数回呼び出しても安全です。2 回目以降の呼び出しには効果がありません。

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

  // 後で、ユーザーがキャンセルした場合:
  control.stopPolling();
  ```
</ParamField>
