/** * ANAMNESIS T-OPRF Client — Threshold Oblivious Pseudo-Random Function * * Client-side password hashing, agent communication, and OPRF reconstruction. * Part of the 8th protocol primitive (K8 — Distributed Recognition). * * For full privacy (password never leaves device), the SDK must perform * EC point blinding using secp256k1. This requires @noble/secp256k1. * Install: npm install @noble/secp256k1 * * Without @noble/secp256k1, the SDK sends the password hash directly * to agents (less private but functionally correct for testnet). */ /** * Hash identity to match the agent-side hash_to_point. * Uses keccak256 with domain separation and 4-byte LE counter. */ export declare function hashIdentity(identity: string): string; /** OPRF partial evaluation result from one agent. */ export interface OprfPartialEval { participantIndex: number; partialEval: string; agentUrl: string; } /** OPRF authentication result. */ export interface OprfAuthResult { authenticated: boolean; token?: string; commitment?: string; participantCount: number; error?: string; } /** * Authenticate with the Sequence0 network using T-OPRF. * * The password is hashed locally. For full privacy (agents never see the hash), * install @noble/secp256k1 for EC point blinding. */ export declare function authenticate(walletId: string, password: string, agentUrls: string[], threshold?: number): Promise; /** * Enroll a wallet for OPRF authentication. */ export declare function enroll(walletId: string, password: string, agentUrls: string[], threshold?: number): Promise<{ commitment: string; success: boolean; }>; //# sourceMappingURL=oprf.d.ts.map