import { AuthProvider, User, ClientConfig } from "@pooflabs/core"; /** * Clears the session if it was created before auth method tracking (legacy session). * Returns true if the session was cleared, false if the session is compatible. * * Dispatches to the correct session manager based on the current auth method * so both web (WebSessionManager) and RN (ReactNativeSessionManager) sessions * are properly cleared. */ export declare function clearIncompatibleSession(): boolean; export declare const SOLANA_DEVNET_RPC_URL = "https://idelle-8nxsep-fast-devnet.helius-rpc.com"; export declare const SOLANA_MAINNET_RPC_URL = "https://celestia-cegncv-fast-mainnet.helius-rpc.com"; export declare const SURFNET_RPC_URL = "https://surfpool.fly.dev"; export declare function getAuthProvider(config?: Partial): Promise; /** Per-call overrides forwarded to the active auth provider's modal. */ export interface LoginOptions { /** Override the modal theme just for this login call: 'light' or 'dark'. */ theme?: 'light' | 'dark'; /** Override the modal title just for this login call. */ modalTitle?: string; /** Override the modal subtitle just for this login call. */ modalSubtitle?: string; /** * Drive a single specific login flow instead of opening the full chooser modal * (for apps rendering their own auth UI): 'wallet' | 'email' | 'google' | 'apple'. * 'google'/'apple' require a custom Phantom app with that OAuth provider configured. */ method?: 'wallet' | 'email' | 'google' | 'apple'; } export declare function login(options?: LoginOptions): Promise; export declare function getCurrentAuthMethod(): string | null; export declare function logout(): Promise; /** * Opens the active provider's wallet-export flow (Privy's hosted modal). Only * embedded (email) wallets implement `exportWallet`; external wallets (Phantom) * throw. The private key is revealed only to the user on Privy's origin — it is * never exposed to this SDK or the host app. */ export declare function exportWallet(address?: string): Promise;