/** * RetryService - Retry logic for resilient network operations * * Features: * - Exponential backoff * - Configurable retry policies * - Error filtering (only retry on specific errors) * - Timeout support */ export interface RetryOptions { maxAttempts?: number; initialDelayMs?: number; maxDelayMs?: number; backoffMultiplier?: number; timeout?: number; retryableErrors?: string[]; onRetry?: (_error: Error, _attempt: number) => void; } export declare class RetryService { private static instance; private logger; private constructor(); static getInstance(): RetryService; /** * Execute function with retry logic */ execute(fn: () => Promise, options?: RetryOptions): Promise; /** * Execute with timeout */ private withTimeout; /** * Check if error is retryable */ private isRetryable; /** * Sleep for specified milliseconds */ private sleep; /** * Retry SSH operations specifically */ retrySSH(fn: () => Promise): Promise; /** * Retry download operations specifically */ retryDownload(fn: () => Promise): Promise; } //# sourceMappingURL=RetryService.d.ts.map