import { IMetricsCollector, Metric } from './interfaces'; /** * In-memory metrics collector with time-based retention */ export declare class MetricsCollector implements IMetricsCollector { private metrics; private timers; private retentionHours; private cleanupInterval; constructor(retentionHours?: number); recordCounter(name: string, value?: number, labels?: Record): void; recordGauge(name: string, value: number, labels?: Record): void; recordHistogram(name: string, value: number, labels?: Record): void; startTimer(name: string, labels?: Record): () => void; getMetrics(): Promise; getMetricByName(name: string): Promise; clearMetrics(): void; /** * Get aggregated performance metrics */ getPerformanceMetrics(): Promise>; /** * Get metrics for a specific time range */ getMetricsInRange(startTime: Date, endTime: Date): Promise; /** * Export metrics in Prometheus format */ exportPrometheus(): Promise; destroy(): void; private addMetric; private getLabelKey; private getHistogramBuckets; private startCleanupInterval; private cleanupOldMetrics; private getMetricNameFromKey; private getMetricDescription; private formatPrometheusLabels; } //# sourceMappingURL=metricsCollector.d.ts.map