export { configure, evaluate } from './legacy/evaluate/index.js'; import { TaskFn, ScoreFn } from './legacy/shared.js'; export { BaseScorerOptions, Score, TaskResult, ToolCall } from './legacy/shared.js'; export { ToolCallScorer, ToolCallScorerConfig, ToolCallScorerOptions } from './legacy/scorers/toolCallScorer.js'; export { StructuredOutputScorer, StructuredOutputScorerConfig, StructuredOutputScorerOptions } from './legacy/scorers/structuredOutputScorer.js'; export { formatScores, wrapText } from './legacy/format.js'; import 'ai'; import './internal/matchers.js'; /** Options for the temporary scorer-first `describeEval(...)` compatibility API. */ interface LegacyDescribeEvalOptions { data: () => Promise>>; task: TaskFn; skipIf?: () => boolean; scorers: ScoreFn[]; threshold?: number | null; timeout?: number; beforeEach?: () => void | Promise; afterEach?: () => void | Promise; } /** Legacy Vitest matcher function used by `expect(input).toEval(...)`. */ type ToEval = (expected: any, taskFn: TaskFn, scoreFn: ScoreFn, threshold?: number) => Promise; declare module "vitest" { interface Assertion { toEval: ToEval; } interface AsymmetricMatchersContaining { toEval: ToEval; } } /** Defines a scorer-first legacy eval suite. Prefer root `describeEval(...)`. */ declare function describeEval(name: string, options: LegacyDescribeEvalOptions): void; export { type LegacyDescribeEvalOptions, ScoreFn, TaskFn, type ToEval, describeEval };