/** * Test Retry for Flaky Tests */ import type { TestResult } from './types'; export type BackoffStrategy = 'fixed' | 'linear' | 'exponential'; export type RetryableError = 'adapter_error' | 'timeout' | 'rate_limit' | 'assertion_failed' | 'unknown'; export interface RetryConfig { retries: number; retry_delay_ms?: number; backoff?: BackoffStrategy; retry_on?: RetryableError[]; skip_on?: RetryableError[]; } /** * Classify a test failure into an error category. */ export declare function classifyError(result: TestResult): RetryableError; /** * Determine if a failed result should be retried based on config. */ export declare function shouldRetry(result: TestResult, config: RetryConfig): boolean; /** * Compute delay for a given attempt using backoff strategy. */ export declare function computeBackoffDelay(attempt: number, baseDelay: number, strategy?: BackoffStrategy): number; export interface RetryResult extends TestResult { attempts?: number; attemptResults?: TestResult[]; } /** * Run a test function with retry support. * Returns the final result with attempt info. */ export declare function withRetry(runFn: () => Promise, config: RetryConfig): Promise; /** * Format retry info for display. */ export declare function formatRetryInfo(result: RetryResult): string; //# sourceMappingURL=retry.d.ts.map