/** * Client-side WebAuthn implementation */ import type { WebAuthnOptions } from '../types/auth'; export declare class WebAuthnClient { private options; constructor(options: WebAuthnOptions); /** * Check if WebAuthn is supported in this browser */ static isSupported(): boolean; /** * Check if the device supports biometric authentication */ static isAvailable(): Promise; /** * Start WebAuthn authentication * @param challenge The challenge from the server */ authenticate(challenge: string): Promise; /** * Register a new WebAuthn credential * @param challenge The challenge from the server * @param userId The user's ID (we'll use their pubkey) * @param userName The user's display name (we'll use their npub) */ register(challenge: string, userId: string, userName: string): Promise; private serializeCredential; private base64ToBuffer; private bufferToBase64; private stringToBuffer; }