import type { CaseResult } from "../vitest-runner.js"; import type { EvalDef, MetricResult, MetricSpec } from "../../types.js"; import type { NormalizedTrace } from "../trace/types.js"; import { type JudgeMetricScore } from "../judge.js"; export type MetricJudge = (input: { evalDef: EvalDef; metric: MetricSpec; cloneDir: string; traceJsonPath: string; trace: NormalizedTrace; oracleOutcome: OracleOutcome; agentUnderTest: string; }) => Promise; type OracleOutcome = { passed: number; total: number; cases: CaseResult[]; }; export declare function executeMetrics(input: { evalDef: EvalDef; cloneDir: string; traceJsonPath: string; trace: NormalizedTrace; oracleOutcome: OracleOutcome; agentUnderTest: string; judgeEnabled?: boolean; judgeSkipReason?: string; judge?: MetricJudge; }): Promise; export {};