chromium/third_party/blink/renderer/modules/credentialmanagement/credential_request_options.idl

// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// https://w3c.github.io/webappsec-credential-management/#dictdef-credentialrequestoptions

enum CredentialMediationRequirement {
  "silent",
  "optional",
  "required",
  "conditional"
};

dictionary CredentialRequestOptions {
    FederatedCredentialRequestOptions federated;
    IdentityCredentialRequestOptions identity;

    boolean password = false;
    CredentialMediationRequirement mediation = "optional";

    [RuntimeEnabled=WebOTP] OTPCredentialRequestOptions otp;

    PublicKeyCredentialRequestOptions publicKey;

    [RuntimeEnabled=WebIdentityDigitalCredentials] DigitalCredentialRequestOptions digital;

    AbortSignal signal;
};