export declare class Passkey { /** * Creates a new Passkey * * @param request The FIDO2 Attestation Request in JSON format * @param options An object containing options for the registration process * @returns The FIDO2 Attestation Result in JSON format * @throws */ static register(request: PasskeyRegistrationRequest, { withSecurityKey }?: { withSecurityKey: boolean; }): Promise; /** * Authenticates using an existing Passkey * * @param request The FIDO2 Assertion Request in JSON format * @param options An object containing options for the authentication process * @returns The FIDO2 Assertion Result in JSON format * @throws */ static authenticate(request: PasskeyAuthenticationRequest, { withSecurityKey }?: { withSecurityKey: boolean; }): Promise; /** * Checks if Passkeys are supported on the current device * * @returns A boolean indicating whether Passkeys are supported */ static isSupported(): boolean; } /** * The available options for Passkey operations */ export interface PasskeyOptions { withSecurityKey: boolean; } interface PublicKeyCredentialDescriptor { type: string; id: string; transports?: Array; } /** * The FIDO2 Attestation Request * https://www.w3.org/TR/webauthn-2/#dictionary-makecredentialoptions */ export interface PasskeyRegistrationRequest { challenge: string; rp: { id: string; name: string; }; user: { id: string; name: string; displayName: string; }; pubKeyCredParams: Array<{ type: string; alg: number; }>; timeout?: number; excludeCredentials?: Array; authenticatorSelection?: { authenticatorAttachment?: string; requireResidentKey?: boolean; residentKey?: string; userVerification?: string; }; attestation?: string; extensions?: Record; } /** * The FIDO2 Attestation Result */ export interface PasskeyRegistrationResult { id: string; rawId: string; type?: string; response: { clientDataJSON: string; attestationObject: string; }; } /** * The FIDO2 Assertion Request * https://www.w3.org/TR/webauthn-2/#dictionary-assertion-options */ export interface PasskeyAuthenticationRequest { challenge: string; rpId: string; timeout?: number; allowCredentials?: Array; userVerification?: string; extensions?: Record; } /** * The FIDO2 Assertion Result */ export interface PasskeyAuthenticationResult { id: string; rawId: string; type?: string; response: { authenticatorData: string; clientDataJSON: string; signature: string; userHandle: string; }; } export {}; //# sourceMappingURL=Passkey.d.ts.map