// Copyright 2014 The Chromium Authors. All rights reserved.
// 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/#passwordcredential

typedef (FormData or URLSearchParams) CredentialBodyType;

[
    RaisesException=Constructor,
    Constructor(PasswordCredentialData data),
    Constructor(HTMLFormElement form),
    Exposed=Window,
    SecureContext
] interface PasswordCredential : Credential {
    [DeprecateAs=CredentialManagerIdName] attribute USVString idName;
    [DeprecateAs=CredentialManagerPasswordName] attribute USVString passwordName;
    [DeprecateAs=CredentialManagerAdditionalData] attribute CredentialBodyType? additionalData;
    readonly attribute DOMString password;
};
PasswordCredential implements CredentialUserData;
