export interface RetryOptions {
    /** Maximum number of retry attempts (default: 5) */
    maxRetries: number;
    /** Base delay in milliseconds (default: 2000) */
    baseDelay: number;
    /** Maximum delay in milliseconds (default: 60_000) */
    maxDelay: number;
    /** Jitter factor for randomization (0-1, default: 0.3) */
    jitter: number;
    /** Function to determine if error should trigger retry (default: isRetryError) */
    handleError: (error: any) => boolean;
}
/**
 * @param fn Function to Apply the retry logic.
 * @param maxRetries How many time to try. Max Retry is 5.
 * @returns
 */
export declare function randomBackoffRetry<T>(fn: () => Promise<T>, options?: Partial<RetryOptions>): Promise<T>;
export declare function randomBackoffStrategy(props: {
    count: number;
    error: unknown;
}): number;
