import type { AxiosRequestConfig, AxiosResponse } from "axios";
export interface RetryConfig {
    retries?: number;
    retryDelay?: number;
    retryOn?: number[];
}
export interface RetryStrategy {
    executeWithRetry(options: AxiosRequestConfig): Promise<AxiosResponse>;
}
export declare class ExponentialBackoffRetryStrategy implements RetryStrategy {
    private readonly config;
    constructor(cfg?: RetryConfig);
    executeWithRetry(options: AxiosRequestConfig): Promise<AxiosResponse>;
}
export declare function createDefaultRetryStrategy(retryConfig?: RetryConfig): RetryStrategy;
//# sourceMappingURL=RetryStrategy.d.ts.map