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

# MfaWebAuthnPlatformEnrollmentMembers

MfaWebAuthnPlatformEnrollmentMembers

````ts Example theme={null}
export interface MfaWebAuthnPlatformEnrollmentMembers extends BaseMembers {
  /**
   * L'objet screen avec la structure de données spécifique à l'inscription à WebAuthn de plateforme MFA.
   */
  screen: ScreenMembersOnMfaWebAuthnPlatformEnrollment;
  
  /**
   * Lance le processus de création de identifiant de plateforme WebAuthn à l'aide des public key options
   * disponibles sur `this.screen.publicKey` et soumet l’identifiant résultant au serveur.
   * Cette méthode appelle `createPasskeyCredentials` en interne (qui encapsule `navigator.credentials.create()`).
   *
   * @param {SubmitPasskeyCredentialOptions} [payload] - Paramètres personnalisés optionnels à envoyer au serveur
   * avec l’identifiant créé.
   * @returns {Promise<void>} Une promesse qui se résout lorsque l’identifiant est créé et soumis avec succès.
   * @throws {Error} Génère une erreur si `this.screen.publicKey` n'est pas disponible, si `createPasskeyCredentials` échoue
   * (p. ex., annulation par l'utilisateur, problèmes matériels), ou si la soumission au serveur échoue.
   * @example
   * ```typescript
   * // En supposant que 'sdk' est une instance de MfaWebAuthnPlatformEnrollment
   * try {
   *   if (!sdk.screen.publicKey) { // Vérifier si les options sont disponibles
   *     throw new Error("Public key creation options are not available on the screen context.");
   *   }
   *   await sdk.submitPasskeyCredential(); // Pas besoin de passer publicKey explicitement
   *   // En cas de succès, Auth0 gère la redirection.
   * } catch (error) {
   *   console.error('Passkey enrollment failed:', error);
   *   // Gérer l'erreur, potentiellement en appelant reportBrowserError s'il s'agit d'une WebAuthn API error
   *   if (error.name && error.message) { // Vérifier si cela ressemble à une WebAuthn error
   *     await sdk.reportBrowserError({ error: { name: error.name, message: error.message } });
   *   }
   * }
   * ```
   */
  submitPasskeyCredential(payload?: SubmitPasskeyCredentialOptions): Promise<void>;

  /**
   * Signale une erreur côté navigateur rencontrée lors de l'opération WebAuthn `navigator.credentials.create()`.
   * Cette méthode envoie les détails de l'erreur au serveur.
   *
   * @param {ReportBrowserErrorOptions} payload - Les détails de l'erreur du navigateur et toute option personnalisée.
   * @returns {Promise<void>} Une promesse qui se résout lorsque le rapport d'erreur est soumis avec succès.
   * @throws {Error} Génère une erreur si la soumission échoue.
   * @example
   * ```typescript
   * // En supposant que 'sdk' est une instance de MfaWebAuthnPlatformEnrollment
   * // Dans le bloc catch d'une tentative de création de clé d’accès (p. ex. depuis submitPasskeyCredential) :
   * } catch (webAuthnError) {
   *   if (webAuthnError.name) { // Vérifier s'il s'agit probablement d'une WebAuthn API error
   *      await sdk.reportBrowserError({ error: { name: webAuthnError.name, message: webAuthnError.message } });
   *   }
   *   // Mettre à jour l'interface pour afficher le message d'erreur à l'utilisateur
   * }
````

<h2 id="properties">
  Propriétés
</h2>

<ParamField body="branding" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/BrandingMembers">BrandingMembers</a></span>} />

<ParamField body="client" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/ClientMembers">ClientMembers</a></span>} />

<ParamField body="organization" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/OrganizationMembers">OrganizationMembers</a></span>} />

<ParamField body="prompt" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/PromptMembers">PromptMembers</a></span>} />

<ParamField body="screen" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/ScreenMembersOnMfaWebAuthnPlatformEnrollment">ScreenMembersOnMfaWebAuthnPlatformEnrollment</a></span>}>
  L’objet screen contenant la structure de données propre à l’inscription à WebAuthn de plateforme.
</ParamField>

<ParamField body="tenant" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/TenantMembers">TenantMembers</a></span>} />

<ParamField body="transaction" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/TransactionMembers">TransactionMembers</a></span>} />

<ParamField body="untrustedData" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/UntrustedDataMembers">UntrustedDataMembers</a></span>} />

<ParamField body="user" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/UserMembers">UserMembers</a></span>} />

<h2 id="methods">
  Méthodes
</h2>

<ParamField body="refuseEnrollmentOnThisDevice" type="Promise<void>">
  Permet à l’utilisateur de refuser l’inscription à WebAuthn de plateforme sur l’appareil actuel.
  Cette action indique que l’utilisateur ne souhaite pas utiliser un authentificateur de plateforme sur cet appareil précis.

  Une promesse résolue lorsque l’action de refus est soumise avec succès.

  <h4 id="throws">
    Throws
  </h4>

  Lève une erreur si la soumission échoue.

  ```typescript Example theme={null}
  // En supposant que 'sdk' est une instance de MfaWebAuthnPlatformEnrollment
  await sdk.refuseEnrollmentOnThisDevice();
  ```

  <Expandable title="Paramètres">
    <ParamField body="payload?" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/CustomOptions">CustomOptions</a></span>}>
      Options personnalisées facultatives à inclure dans la requête.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="reportBrowserError" type="Promise<void>">
  Signale une erreur côté navigateur survenue pendant l’opération WebAuthn `navigator.credentials.create()`.
  Cette méthode envoie les détails de l’erreur au serveur.

  Une promesse résolue lorsque le signalement de l’erreur est soumis avec succès.

  <h4 id="throws-2">
    Throws
  </h4>

  Lève une erreur si la soumission échoue.

  ```typescript Example theme={null}
  // En supposant que 'sdk' est une instance de MfaWebAuthnPlatformEnrollment
  // Dans le bloc catch d'une tentative de création de clé d’accès (p. ex. à partir de submitPasskeyCredential):
  } catch (webAuthnError) {
    if (webAuthnError.name) { // Vérifier s'il s'agit probablement d'une erreur de l'API WebAuthn
       await sdk.reportBrowserError({ error: { name: webAuthnError.name, message: webAuthnError.message } });
    }
    // Mettre à jour l’UI pour afficher le message d’erreur à l’utilisateur
  }
  ```

  <Expandable title="Paramètres">
    <ParamField body="payload" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/ReportBrowserErrorOptions">ReportBrowserErrorOptions</a></span>}>
      Les détails de l’erreur côté navigateur et toute option personnalisée.

      **Propriétés**

      <ParamField body="error" type="object">
        <Expandable title="propriétés">
          <ParamField body="message" type="string" />

          <ParamField body="name" type="string" />
        </Expandable>
      </ParamField>
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="snoozeEnrollment" type="Promise<void>">
  Permet à l’utilisateur de reporter l’inscription à WebAuthn de plateforme.
  Cette action signifie généralement qu’on lui rappellera de s’inscrire plus tard.

  Une promesse résolue lorsque l’action de report est soumise avec succès.

  <h4 id="throws-3">
    Throws
  </h4>

  Lève une erreur si la soumission échoue.

  ```typescript Example theme={null}
  // En supposant que 'sdk' est une instance de MfaWebAuthnPlatformEnrollment
  await sdk.snoozeEnrollment();
  ```

  <Expandable title="Paramètres">
    <ParamField body="payload?" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/CustomOptions">CustomOptions</a></span>}>
      Options personnalisées facultatives à inclure dans la requête.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="submitPasskeyCredential" type="Promise<void>">
  Lance le processus de création de l’identifiant WebAuthn de plateforme à l’aide des options de clé publique
  disponibles dans `this.screen.publicKey`, puis soumet l’identifiant obtenu au serveur.
  Cette méthode appelle en interne `createPasskeyCredentials` (qui encapsule `navigator.credentials.create()`).

  Une promesse résolue lorsque l’identifiant est créé et soumis avec succès.

  <h4 id="throws-4">
    Throws
  </h4>

  Lève une erreur si `this.screen.publicKey` n’est pas disponible, si `createPasskeyCredentials` échoue
  (p. ex., annulation par l’utilisateur, problèmes matériels), ou si la soumission au serveur échoue.

  ```typescript Example theme={null}
  // En supposant que 'sdk' est une instance de MfaWebAuthnPlatformEnrollment
  try {
    if (!sdk.screen.publicKey) { // Vérifier si les options sont disponibles
      throw new Error("Public key creation options are not available on the screen context.");
    }
    await sdk.submitPasskeyCredential(); // Pas besoin de passer publicKey explicitement
    // En cas de succès, Auth0 gère la redirection.
  } catch (error) {
    console.error('Passkey enrollment failed:', error);
    // Gérer l’erreur, potentiellement en appelant reportBrowserError s’il s’agit d’une erreur de l’API WebAuthn
    if (error.name && error.message) { // Vérifier si cela ressemble à une erreur WebAuthn
      await sdk.reportBrowserError({ error: { name: error.name, message: error.message } });
    }
  }
  ```

  <Expandable title="Paramètres">
    <ParamField body="payload?" type={<span><a href="/docs/fr-ca/libraries/acul/js-sdk/Screens/interfaces/SubmitPasskeyCredentialOptions">SubmitPasskeyCredentialOptions</a></span>}>
      Paramètres personnalisés facultatifs à envoyer au serveur
      avec l’identifiant créé.
    </ParamField>
  </Expandable>
</ParamField>
