@just-every/ensemble
Version:
LLM provider abstraction layer with unified streaming interface
15 lines • 809 B
TypeScript
export interface RetryOptions {
maxRetries?: number;
initialDelay?: number;
maxDelay?: number;
backoffMultiplier?: number;
retryableErrors?: Set<string>;
retryableStatusCodes?: Set<number>;
onRetry?: (error: any, attempt: number) => void;
}
export declare const DEFAULT_RETRY_OPTIONS: Required<Omit<RetryOptions, 'onRetry'>>;
export declare function isRetryableError(error: any, options?: RetryOptions): boolean;
export declare function calculateDelay(attempt: number, options?: RetryOptions): number;
export declare function retryWithBackoff<T>(fn: () => Promise<T>, options?: RetryOptions): Promise<T>;
export declare function retryStreamWithBackoff<T>(createStream: () => AsyncGenerator<T>, options?: RetryOptions): AsyncGenerator<T>;
//# sourceMappingURL=retry_handler.d.ts.map