diff --git a/types/webappsec-credential-management/index.d.ts b/types/webappsec-credential-management/index.d.ts index 4c47ee7cc8..c8fbf8ec60 100644 --- a/types/webappsec-credential-management/index.d.ts +++ b/types/webappsec-credential-management/index.d.ts @@ -1,6 +1,7 @@ // Type definitions for W3C (WebAppSec) Credential Management API Level 1, 0.3 // Project: https://github.com/w3c/webappsec-credential-management // Definitions by: Iain McGinniss +// Joao Peixoto // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.7 @@ -493,7 +494,7 @@ interface AuthenticatorAttestationResponse extends AuthenticatorResponse { interface AuthenticatorAssertionResponse extends AuthenticatorResponse { readonly authenticatorData: ArrayBuffer; readonly signature: ArrayBuffer; - readonly userHandle: ArrayBuffer; + readonly userHandle?: ArrayBuffer; } /** diff --git a/types/webappsec-credential-management/webappsec-credential-management-tests.ts b/types/webappsec-credential-management/webappsec-credential-management-tests.ts index 2afa9f8785..1e0500dfce 100644 --- a/types/webappsec-credential-management/webappsec-credential-management-tests.ts +++ b/types/webappsec-credential-management/webappsec-credential-management-tests.ts @@ -352,3 +352,16 @@ function webauthnAuthenticate() { console.log(e.message); }); } + +function mockAuthenticatorAssertionResponse() { + if (!navigator.credentials) { + return; + } + + const sampleResponse: AuthenticatorAssertionResponse = { + clientDataJSON: new ArrayBuffer(0), + authenticatorData: new ArrayBuffer(0), + signature: new ArrayBuffer(0), + }; + sampleResponse.userHandle === undefined; +}