/** * Interface for retry options */ export interface RetryOptions { /** Maximum number of retry attempts (default: 5) */ maxRetries?: number; /** Initial delay in milliseconds (default: 1000) */ initialDelayMs?: number; /** Maximum delay in milliseconds (default: 30000) */ maxDelayMs?: number; /** Backoff factor - multiplier for each retry (default: 2.0) */ backoffFactor?: number; /** Optional condition function to determine if retry should happen */ retryCondition?: (error: unknown) => boolean; } /** * Execute an async operation with retry logic * @param operation Async function to execute * @param options Retry options * @returns Promise resolving to the operation result * @throws The last error encountered after all retries are exhausted */ export declare function withRetry(operation: () => Promise, options?: RetryOptions): Promise;