/**
 * benchmarkRunner.ts — Executes N=1/5/10/100 longitudinal benchmark batches.
 *
 * Orchestrates: cohort selection → session execution → metric calculation → report generation.
 * Each run calls MCP tools through the handler layer, tracks state diffs, and scores results.
 *
 * Usage:
 *   const report = await runBenchmarkBatch("N1");
 *   const report = await runBenchmarkBatch("N5", { entity: "Anthropic" });
 *   const report = await runBenchmarkBatch("N100", { seedDataId: "seed_anthropic_q1_2026" });
 */
import type { BenchmarkRun, BenchmarkBatchReport, BenchmarkUser, BenchmarkScenario, CompoundingMetrics, N1Score, N5Score, N10Score, N100Score, TimeHorizon } from "./longitudinalTypes.js";
import type { McpTool } from "../types.js";
export declare function calculateCompoundingMetrics(runs: BenchmarkRun[]): CompoundingMetrics;
export declare function scoreN1(runs: BenchmarkRun[]): N1Score;
export declare function scoreN5(runs: BenchmarkRun[]): N5Score;
export declare function scoreN10(runs: BenchmarkRun[]): N10Score;
export declare function scoreN100(runs: BenchmarkRun[]): N100Score;
export declare function executeBenchmarkRun(user: BenchmarkUser, scenario: BenchmarkScenario, sessionIndex: number, timeHorizon: TimeHorizon, batchId: string, tools: McpTool[]): Promise<BenchmarkRun>;
export declare function runBenchmarkBatch(layer: "N1" | "N5" | "N10" | "N100", tools: McpTool[], options?: {
    entity?: string;
}): Promise<BenchmarkBatchReport>;
export declare function getBenchmarkHistory(layer?: string): Array<{
    batchId: string;
    layer: string;
    timestamp: string;
    totalSessions: number;
    rca: number;
    prr: number;
}>;
