import { Graph } from '../../../algorithms/graph/graph'; import { Edge, Node } from '../../../algorithms/types/graph'; import { ExperimentReport } from '../types'; import { ExperimentConfig } from './experiment-config'; /** * Run a complete evaluation experiment. * * Executes all configured methods on multiple graph instances, * computes evaluation metrics, and performs statistical testing. * * @template N - Node type * @template E - Edge type * @param config - Experiment configuration * @param baseGraph - Base graph to use for experiments * @returns Complete experiment report * * @example * ```typescript * const config: ExperimentConfig = { * name: 'MI vs Random Baseline', * repetitions: 10, * pathPlanting: { numPaths: 5, signalStrength: 'medium', ... }, * methods: [ * { name: 'MI', ranker: miRanker }, * { name: 'Random', ranker: randomRanker }, * ], * metrics: ['spearman', 'ndcg'], * statisticalTests: ['paired-t'], * seed: 42, * }; * * const report = await runExperiment(config, graph); * console.log(report.winner); // 'MI' (if significantly better) * ``` */ export declare const runExperiment: (config: ExperimentConfig, baseGraph: Graph) => Promise; /** * Run cross-validation experiment. * * Divides data into k folds, trains on k-1 folds, tests on held-out fold. * Provides more robust estimate of method performance. * * @template N - Node type * @template E - Edge type * @param config - Experiment configuration * @param baseGraph - Base graph * @param folds - Number of cross-validation folds (default: 5) * @returns Aggregated results across folds * * @example * ```typescript * const result = await runCrossValidation(config, graph, 5); * console.log(result.aggregated.spearman); // Average spearman across folds * console.log(result.stdDev.spearman); // Standard deviation * ``` */ export declare const runCrossValidation: (config: ExperimentConfig, baseGraph: Graph, folds?: number) => Promise<{ foldResults: ExperimentReport[]; aggregated: ExperimentReport; stdDev: ExperimentReport; }>; //# sourceMappingURL=experiment-runner.d.ts.map