import { EvalSuite, type EvalCase, type EvalReport, type EvalRunnerOptions } from './eval-runner.js'; export interface EvalDriverOptions extends EvalRunnerOptions { timeoutMs?: number; concurrency?: number; retries?: number; onProgress?: (index: number, total: number, caseId: string, status: 'running' | 'done' | 'failed' | 'retrying') => void; } export interface GenerateResponseResult { response: string; toolCalls?: string[]; durationMs?: number; } export declare class EvalDriver { private runner; private timeoutMs; private concurrency; private retries; private onProgress?; constructor(options?: EvalDriverOptions); run(suite: EvalSuite, generateResponse: (input: string, testCase: EvalCase) => Promise): Promise; private runSingleCase; private buildReport; } export declare function loadEvalSuiteFromConfig(config: { name: string; description?: string; cases: Array<{ id: string; description: string; input: string; expected: unknown; metrics?: Array<{ name: string; type: string; weight?: number; }>; expectedToolCalls?: string[]; outputSchema?: Record; tags?: string[]; }>; }, metricMap: Record number>): EvalSuite; //# sourceMappingURL=eval-driver.d.ts.map