/** * Retry manager for handling request retries */ import type { IRetryOptions } from '../webrequest.types.js'; export declare class RetryManager { private options; constructor(options?: IRetryOptions); /** * Execute a request with retry logic */ execute(executeFn: () => Promise, shouldRetryFn?: (error: any, attempt: number) => boolean): Promise; /** * Execute with multiple fallback URLs */ executeWithFallbacks(urls: string[], requestInit: RequestInit, fetchFn: (url: string, init: RequestInit) => Promise): Promise; /** * Check if we should retry based on response status */ private shouldRetryResponse; /** * Check if we should retry based on error */ private shouldRetryError; /** * Calculate delay for next retry */ private calculateDelay; /** * Delay execution */ private delay; }