1 // GENERATED CONTENT - DO NOT EDIT
2 // Content was automatically extracted by Reffy into reffy-reports
3 // (https://github.com/tidoust/reffy-reports)
4 // Source: Web Authentication: An API for accessing Public Key Credentials - Level 2 (https://w3c.github.io/webauthn/)
6 [SecureContext
, Exposed
=Window
]
7 interface PublicKeyCredential
: Credential
{
8 [SameObject
] readonly attribute ArrayBuffer rawId
;
9 [SameObject
] readonly attribute AuthenticatorResponse response
;
10 AuthenticationExtensionsClientOutputs getClientExtensionResults
();
13 partial dictionary CredentialCreationOptions
{
14 PublicKeyCredentialCreationOptions publicKey
;
17 partial dictionary CredentialRequestOptions
{
18 PublicKeyCredentialRequestOptions publicKey
;
21 partial
interface PublicKeyCredential
{
22 static Promise
<boolean> isUserVerifyingPlatformAuthenticatorAvailable
();
25 [SecureContext
, Exposed
=Window
]
26 interface AuthenticatorResponse
{
27 [SameObject
] readonly attribute ArrayBuffer clientDataJSON
;
30 [SecureContext
, Exposed
=Window
]
31 interface AuthenticatorAttestationResponse
: AuthenticatorResponse
{
32 [SameObject
] readonly attribute ArrayBuffer attestationObject
;
33 sequence
<DOMString
> getTransports
();
34 ArrayBuffer getAuthenticatorData
();
35 ArrayBuffer? getPublicKey
();
36 COSEAlgorithmIdentifier getPublicKeyAlgorithm
();
39 [SecureContext
, Exposed
=Window
]
40 interface AuthenticatorAssertionResponse
: AuthenticatorResponse
{
41 [SameObject
] readonly attribute ArrayBuffer authenticatorData
;
42 [SameObject
] readonly attribute ArrayBuffer signature
;
43 [SameObject
] readonly attribute ArrayBuffer? userHandle
;
46 dictionary PublicKeyCredentialParameters
{
47 required DOMString type
;
48 required COSEAlgorithmIdentifier alg
;
51 dictionary PublicKeyCredentialCreationOptions
{
52 required PublicKeyCredentialRpEntity rp
;
53 required PublicKeyCredentialUserEntity user
;
55 required BufferSource challenge
;
56 required sequence
<PublicKeyCredentialParameters
> pubKeyCredParams
;
58 unsigned long timeout
;
59 sequence
<PublicKeyCredentialDescriptor
> excludeCredentials
= [];
60 AuthenticatorSelectionCriteria authenticatorSelection
;
61 DOMString attestation
= "none";
62 AuthenticationExtensionsClientInputs extensions
;
65 dictionary PublicKeyCredentialEntity
{
66 required DOMString name
;
69 dictionary PublicKeyCredentialRpEntity
: PublicKeyCredentialEntity
{
73 dictionary PublicKeyCredentialUserEntity
: PublicKeyCredentialEntity
{
74 required BufferSource
id;
75 required DOMString displayName
;
78 dictionary AuthenticatorSelectionCriteria
{
79 DOMString authenticatorAttachment
;
80 boolean requireResidentKey
= false
;
81 DOMString residentKey
;
82 DOMString userVerification
= "preferred";
85 enum AuthenticatorAttachment
{
90 enum ResidentKeyRequirement
{
96 enum AttestationConveyancePreference
{
103 dictionary PublicKeyCredentialRequestOptions
{
104 required BufferSource challenge
;
105 unsigned long timeout
;
107 sequence
<PublicKeyCredentialDescriptor
> allowCredentials
= [];
108 DOMString userVerification
= "preferred";
109 AuthenticationExtensionsClientInputs extensions
;
112 dictionary AuthenticationExtensionsClientInputs
{
115 dictionary AuthenticationExtensionsClientOutputs
{
118 dictionary CollectedClientData
{
119 required DOMString type
;
120 required DOMString challenge
;
121 required DOMString origin
;
123 TokenBinding tokenBinding
;
126 dictionary TokenBinding
{
127 required DOMString status
;
131 enum TokenBindingStatus
{ "present", "supported" };
133 enum PublicKeyCredentialType
{
137 dictionary PublicKeyCredentialDescriptor
{
138 required DOMString type
;
139 required BufferSource
id;
140 sequence
<DOMString
> transports
;
143 enum AuthenticatorTransport
{
150 typedef long COSEAlgorithmIdentifier
;
152 enum UserVerificationRequirement
{
158 partial dictionary AuthenticationExtensionsClientInputs
{
162 partial dictionary AuthenticationExtensionsClientOutputs
{
166 partial dictionary AuthenticationExtensionsClientInputs
{
167 USVString appidExclude
;
170 partial dictionary AuthenticationExtensionsClientOutputs
{
171 boolean appidExclude
;
174 partial dictionary AuthenticationExtensionsClientInputs
{
178 typedef sequence
<unsigned long> UvmEntry
;
179 typedef sequence
<UvmEntry
> UvmEntries
;
181 partial dictionary AuthenticationExtensionsClientOutputs
{
185 partial dictionary AuthenticationExtensionsClientInputs
{
189 dictionary CredentialPropertiesOutput
{
193 partial dictionary AuthenticationExtensionsClientOutputs
{
194 CredentialPropertiesOutput credProps
;
197 dictionary AuthenticationExtensionsPRFValues
{
198 required ArrayBuffer first
;
202 dictionary AuthenticationExtensionsPRFInputs
{
203 AuthenticationExtensionsPRFValues eval
;
204 record
<USVString
, AuthenticationExtensionsPRFValues
> evalByCredential
;
207 partial dictionary AuthenticationExtensionsClientInputs
{
208 AuthenticationExtensionsPRFInputs prf
;
211 dictionary AuthenticationExtensionsPRFOutputs
{
213 AuthenticationExtensionsPRFValues results
;
216 partial dictionary AuthenticationExtensionsClientOutputs
{
217 AuthenticationExtensionsPRFOutputs prf
;
220 partial dictionary AuthenticationExtensionsClientInputs
{
221 AuthenticationExtensionsLargeBlobInputs largeBlob
;
224 dictionary AuthenticationExtensionsLargeBlobInputs
{
229 partial dictionary AuthenticationExtensionsClientOutputs
{
230 AuthenticationExtensionsLargeBlobOutputs largeBlob
;
233 dictionary AuthenticationExtensionsLargeBlobOutputs
{