/** * Retry utilities with exponential backoff */ export interface RetryOptions { /** Maximum number of retry attempts */ maxRetries?: number; /** Initial delay in milliseconds */ initialDelay?: number; /** Maximum delay in milliseconds */ maxDelay?: number; /** Exponential backoff factor */ backoffFactor?: number; /** Jitter factor (0-1) to randomize delays */ jitter?: number; /** Function to determine if error is retryable */ isRetryable?: (error: unknown) => boolean; /** Callback on each retry */ onRetry?: (error: unknown, attempt: number, delay: number) => void; } /** * Sleep for specified milliseconds */ export declare function sleep(ms: number): Promise; /** * Calculate delay with exponential backoff and jitter */ export declare function calculateDelay(attempt: number, initialDelay: number, maxDelay: number, backoffFactor: number, jitter: number): number; /** * Retry a function with exponential backoff */ export declare function retry(fn: () => Promise, options?: RetryOptions): Promise; /** * Retry with specific conditions for RPC errors */ export declare function retryRpc(fn: () => Promise, options?: Omit): Promise; /** * Create a debounced function */ export declare function debounce any>(fn: T, delay: number): (...args: Parameters) => void; /** * Create a throttled function */ export declare function throttle any>(fn: T, limit: number): (...args: Parameters) => void; declare const _default: { retry: typeof retry; retryRpc: typeof retryRpc; sleep: typeof sleep; calculateDelay: typeof calculateDelay; debounce: typeof debounce; throttle: typeof throttle; }; export default _default; //# sourceMappingURL=retry.d.ts.map