export interface RetryOptions {
    maxRetries?: number;
    initialDelay?: number;
    maxDelay?: number;
    backoffMultiplier?: number;
    retryableErrors?: Set<string>;
    retryableStatusCodes?: Set<number>;
    onRetry?: (error: any, attempt: number) => void;
}
export declare const DEFAULT_RETRY_OPTIONS: Required<Omit<RetryOptions, 'onRetry'>>;
export declare function isRetryableError(error: any, options?: RetryOptions): boolean;
export declare function calculateDelay(attempt: number, options?: RetryOptions): number;
export declare function retryWithBackoff<T>(fn: () => Promise<T>, options?: RetryOptions): Promise<T>;
export declare function retryStreamWithBackoff<T>(createStream: () => AsyncGenerator<T>, options?: RetryOptions): AsyncGenerator<T>;
//# sourceMappingURL=retry_handler.d.ts.map