/**
 * Improved Benchmark Runner for UAP
 *
 * Integrates all improvements:
 * - Dynamic memory retrieval
 * - Task classification and routing
 * - Multi-turn agent loop
 * - Hierarchical prompting
 * - Execution verification
 */
import { type TaskClassification } from '../memory/task-classifier.js';
import { type VerificationResult } from './execution-verifier.js';
interface ModelConfig {
    id: string;
    name: string;
    apiModel: string;
}
interface BenchmarkTask {
    id: string;
    name: string;
    description: string;
    prompt: string;
    difficulty: 'easy' | 'medium' | 'hard';
    category: string;
    expectedPatterns: string[];
}
interface TaskResult {
    taskId: string;
    modelId: string;
    success: boolean;
    latencyMs: number;
    turnsUsed: number;
    memoryUsed: boolean;
    classification: TaskClassification;
    verification: VerificationResult;
    errors: string[];
}
interface ModelResult {
    modelId: string;
    modelName: string;
    tasksRun: number;
    tasksSucceeded: number;
    successRate: number;
    avgLatencyMs: number;
    avgTurns: number;
    results: TaskResult[];
}
interface BenchmarkReport {
    timestamp: string;
    config: {
        maxTurns: number;
        useMemory: boolean;
        useHierarchicalPrompting: boolean;
    };
    models: ModelResult[];
    comparison: {
        bestOverall: string;
        fastestModel: string;
        byDifficulty: Record<string, {
            model: string;
            successRate: number;
        }>;
        byCategory: Record<string, {
            model: string;
            successRate: number;
        }>;
    };
    memoryImpact?: {
        withMemory: ModelResult[];
        withoutMemory: ModelResult[];
        improvement: Record<string, {
            successDelta: number;
            speedup: number;
        }>;
    };
}
declare const MODELS: ModelConfig[];
declare const BENCHMARK_TASKS: BenchmarkTask[];
export declare function runImprovedBenchmark(options?: {
    apiKey?: string;
    models?: string[];
    compareMemory?: boolean;
    maxTurns?: number;
    useHierarchicalPrompting?: boolean;
    verbose?: boolean;
    parallelModels?: number;
}): Promise<BenchmarkReport>;
export { MODELS, BENCHMARK_TASKS };
//# sourceMappingURL=improved-benchmark.d.ts.map