export type SolanaWalletCredential = { publicKey: string; message: string; signature: string; }; /** * Minimal interface for a Solana wallet provider (Phantom, Solflare, etc.). * Apps pass their connected wallet to `SolanaWallet.auth()`. */ export type SolanaWalletProvider = { connect(): Promise<{ publicKey: { toString(): string; }; }>; signMessage(message: Uint8Array, encoding: string): Promise<{ signature: Uint8Array; }>; }; export declare function createSolanaWalletSignatureMessage(): { message: string; messageBytes: Uint8Array; timestamp: number; }; export declare class SolanaWallet { private credential; auth(provider: SolanaWalletProvider): Promise<{ publicKey: string; }>; setCredential(credential: SolanaWalletCredential): void; clearCredential(): void; getCredential(): SolanaWalletCredential | null; isAuthenticated(): boolean; }