interface PasskeyRegistrationParams { email: string; username: string; password?: string; } interface PasskeyAuthenticationParams { email?: string; } interface TransactionVerificationParams { to: string; value?: string; data?: string; } interface PasskeyInfo { credentialId: string; publicKey: string; counter: number; deviceType: string; createdAt: string; } interface BeginRegistrationResponse { challenge: string; rp: { name: string; id: string; }; user: { id: string; name: string; displayName: string; }; pubKeyCredParams: any[]; timeout?: number; authenticatorSelection?: any; attestation?: string; } interface BeginAuthenticationResponse { challenge: string; timeout?: number; rpId?: string; allowCredentials?: any[]; userVerification?: string; } interface BeginTransactionVerificationResponse extends BeginAuthenticationResponse { userOpHash: string; } declare class PasskeyManager { private api; constructor(baseURL: string, tokenProvider?: () => string | null); /** * Complete Passkey Registration Flow */ register(params: PasskeyRegistrationParams): Promise<{ user: any; token: string; passkey: PasskeyInfo; }>; /** * Complete Passkey Login/Authentication Flow */ authenticate(params?: PasskeyAuthenticationParams): Promise<{ user: any; token: string; }>; /** * Verify a transaction (Sign UserOpHash) with Passkey * Returns the verification credential needed for the transaction */ verifyTransaction(params: TransactionVerificationParams): Promise; /** * Add a new device (Passkey) to existing account */ addDevice(params: { email: string; password?: string; }): Promise; } export { type BeginAuthenticationResponse, type BeginRegistrationResponse, type BeginTransactionVerificationResponse, type PasskeyAuthenticationParams, type PasskeyInfo, PasskeyManager, type PasskeyRegistrationParams, type TransactionVerificationParams };