UNPKG

@wavequery/conductor

Version:
22 lines (21 loc) 632 B
export interface RetryOptions { maxRetries: number; baseDelay: number; maxDelay: number; exponential?: boolean; onRetry?: (attempt: number, error: Error) => void; } export interface RetryStrategy { shouldRetry: (error: Error, attempt: number) => boolean; getDelay: (attempt: number) => number; } export declare class RetryHandler { private options; private strategy; constructor(options: RetryOptions); execute<T>(fn: () => Promise<T>): Promise<T>; setStrategy(strategy: Partial<RetryStrategy>): void; private defaultShouldRetry; private defaultGetDelay; private delay; }