import type { AuthNetwork } from './config'; export interface WalletAuthParams { /** * Blockchain network */ network: AuthNetwork; /** * Message that was signed */ message: string; /** * Signature from wallet */ signature: string; /** * Public key (required for Solana and Hedera) */ publicKey?: string; /** * Wallet address */ address?: string; } export interface EmailSendOtpParams { appId?: string; email: string; password: string; } export interface EmailVerifyOtpParams { appId?: string; email: string; otp: string; password: string; } export interface EmailLoginParams { appId?: string; email: string; password: string; } export type OAuthProvider = 'google' | 'twitter'; export interface AuthInitResponse { /** * Server-signed state parameter */ state: string; /** * One-time auth request ID */ authRequestId: string; /** * Nonce for validation */ nonce: string; /** * Expiration time in seconds */ expiresIn: number; /** * PKCE code challenge if applicable */ codeChallenge?: string; } export interface AuthError extends Error { /** * Error code */ code?: string; /** * HTTP status code if applicable */ status?: number; /** * Additional error details */ payload?: Record; } export interface PostMessageData { /** * Message type */ type: 'emblem-auth-success' | 'emblem-auth-error' | 'emblem-auth-cancelled'; /** * Session data if successful */ session?: unknown; /** * Visitor ID from fingerprint (VaultFP visitor_id) */ visitorId?: string; /** * Error details if failed */ error?: string; /** * Nonce for validation */ nonce?: string; /** * App ID */ appId?: string; } /** * Bitcoin addresses derived from the vault's BTC pubkey */ export interface BtcAddresses { /** Legacy P2PKH address (starts with 1) */ p2pkh?: string; /** Native SegWit P2WPKH address (starts with bc1q) */ p2wpkh?: string; /** Taproot P2TR address (starts with bc1p) */ p2tr?: string; } /** * Vault information returned by the API */ export interface VaultInfo { vaultId: string; tokenId?: string; evmAddress?: string; solanaAddress?: string; address?: string; hederaAccountId?: string; /** Bitcoin public key (hex-encoded) */ btcPubkey?: string; /** Bitcoin addresses derived from btcPubkey */ btcAddresses?: BtcAddresses; createdAt?: string; created_by?: string; metadata?: Record; } //# sourceMappingURL=auth.d.ts.map