import { PerformanceMetrics } from './interfaces'; /** * Enhanced performance monitoring utility with granular tracking */ export declare class PerformanceMonitor { private startTime; private executionTimes; private errorCount; private totalExecutions; private ruleExecutionTimes; private throughputHistory; private lastGcCheck; private gcPressure; start(): void; end(): void; /** * Record execution time for a specific rule */ recordRuleExecution(ruleName: string, executionTime: number, success: boolean): void; getAverageExecutionTime(): number; getErrorRate(): number; /** * Calculate percentile from execution times */ private calculatePercentile; /** * Get 95th percentile execution time */ getPercentile95(): number; /** * Get 99th percentile execution time */ getPercentile99(): number; /** * Get current throughput (validations per second) */ getThroughput(): number; /** * Update throughput calculation */ private updateThroughput; getMemoryUsage(): number; /** * Estimate CPU usage based on execution patterns */ getCpuUsage(): number; /** * Estimate garbage collection pressure */ getGcPressure(): number; recordError(): void; /** * Get detailed breakdown of rule performance */ getRuleBreakdown(): Array<{ ruleName: string; executionTime: number; success: boolean; }>; calculateMetrics(startTime: number, rulesExecuted: number, ruleBreakdown?: Array<{ ruleName: string; executionTime: number; success: boolean; }>): PerformanceMetrics; } //# sourceMappingURL=PerformanceMonitor.d.ts.map