/**
 * Retry configuration for HTTP requests
 */
export interface RetryConfig {
    /** Number of retry attempts (default: 3) */
    attempts?: number;
    /** Enable/disable retry functionality (default: true) */
    enabled?: boolean;
    /** Minimum delay between retries in ms (default: 100) */
    minDelay?: number;
    /** Maximum delay between retries in ms (default: 30000) */
    maxDelay?: number;
    /** Exponential backoff factor (default: 2) */
    factor?: number;
    /** Add randomization to delay (default: 0.1) */
    randomize?: number;
    /** HTTP status codes to retry on (default: safe server errors) */
    retryOnStatus?: number[];
    /** HTTP methods to retry (default: ['GET', 'HEAD', 'OPTIONS']) */
    retryOnMethods?: string[];
    /** Network error codes to retry on */
    retryOnNetworkErrors?: string[];
    /** Custom retry condition function */
    shouldRetry?: (error: unknown, attemptNumber: number) => boolean;
}
export declare const DEFAULT_RETRY_CONFIG: Required<RetryConfig>;
/**
 * Merge user config with defaults
 */
export declare function mergeRetryConfig(userConfig?: RetryConfig): Required<RetryConfig>;
//# sourceMappingURL=config.d.ts.map