/** * Performance Metrics Collection * * Collects and aggregates performance metrics over time. */ export interface Metric { name: string; value: number; timestamp: number; tags?: Record; } export interface AggregatedMetric { name: string; count: number; sum: number; avg: number; min: number; max: number; p50: number; p95: number; p99: number; } export declare class MetricsCollector { private metrics; private maxMetrics; constructor(maxMetrics?: number); /** * Record a metric */ record(name: string, value: number, tags?: Record): void; /** * Get all metrics */ getMetrics(): Metric[]; /** * Get metrics by name */ getByName(name: string): Metric[]; /** * Get metrics within time range */ getByTimeRange(startTime: number, endTime: number): Metric[]; /** * Aggregate metrics by name */ aggregate(name: string): AggregatedMetric | null; /** * Get all aggregated metrics */ aggregateAll(): AggregatedMetric[]; /** * Calculate percentile */ private percentile; /** * Clear all metrics */ clear(): void; /** * Generate summary report */ generateReport(): string; } /** * Global metrics collector */ export declare const metrics: MetricsCollector; //# sourceMappingURL=metrics.d.ts.map