@wavequery/conductor
Version:
Modular LLM orchestration framework
22 lines (21 loc) • 632 B
TypeScript
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;
}