/** * Performance Benchmark Suite * * Establishes baseline metrics and monitors performance over time */ export interface BenchmarkConfig { name: string; iterations: number; warmupIterations: number; timeout: number; memoryThreshold: number; } export interface BenchmarkResult { name: string; iterations: number; totalTime: number; averageTime: number; minTime: number; maxTime: number; p50: number; p95: number; p99: number; memoryBefore: number; memoryAfter: number; memoryDelta: number; passed: boolean; warnings: string[]; } export interface BenchmarkSuite { name: string; benchmarks: BenchmarkResult[]; timestamp: number; environment: { nodeVersion: string; platform: string; arch: string; memory: NodeJS.MemoryUsage; }; } declare class PerformanceBenchmarker { private results; constructor(); /** * Run a single benchmark */ runBenchmark(fn: () => void | Promise, config: BenchmarkConfig): Promise; /** * Run multiple benchmarks as a suite */ runSuite(benchmarks: Array<{ fn: () => void | Promise; config: BenchmarkConfig; }>, suiteName?: string): Promise; /** * Compare two benchmark suites */ compareSuites(baseline: BenchmarkSuite, current: BenchmarkSuite): void; /** * Generate benchmark report */ generateReport(suite: BenchmarkSuite): string; } export declare const benchmarker: PerformanceBenchmarker; export declare const runBenchmark: (fn: () => void | Promise, config: BenchmarkConfig) => Promise; export declare const runSuite: (benchmarks: Array<{ fn: () => void | Promise; config: BenchmarkConfig; }>, suiteName?: string) => Promise; export declare const compareSuites: (baseline: BenchmarkSuite, current: BenchmarkSuite) => void; export declare const generateReport: (suite: BenchmarkSuite) => string; export {}; //# sourceMappingURL=performanceBenchmarker.d.ts.map