/** * Performance Monitoring System * Track and analyze API performance metrics */ import type { RequestConfig } from 'fetchff'; import type { ApiPerformanceMetrics, RequestPerformance } from '@plyaz/types/api'; /** * Performance monitor class for tracking API metrics */ export declare class PerformanceMonitor { private metrics; private requestTimings; private requestPerformance; private maxHistorySize; /** * Create performance monitoring configuration */ createMonitoringConfig(): Pick; /** * Update average response time */ private updateAverageResponseTime; /** * Record request performance data */ private recordRequestPerformance; /** * Get current metrics */ getMetrics(): ApiPerformanceMetrics; /** * Track response timing and performance */ private trackResponseTiming; /** * Track optimization metrics */ private trackOptimizationMetrics; /** * Get performance history */ getPerformanceHistory(): RequestPerformance[]; /** * Calculate optimization metrics */ private calculateOptimizationMetrics; /** * Generate all recommendations */ private generateAllRecommendations; /** * Get performance summary */ getSummary(): { metrics: ApiPerformanceMetrics; optimization: { requestsSaved: number; cacheEfficiency: number; dedupeEfficiency: number; errorRecovery: number; }; recommendations: string[]; }; /** * Reset all metrics */ reset(): void; /** * Set maximum history size */ setMaxHistorySize(size: number): void; } /** * Global performance monitor instance */ export declare const performanceMonitor: PerformanceMonitor; /** * Format metrics for display */ export declare function formatMetrics(metrics: ApiPerformanceMetrics): string; /** * Log performance metrics to console */ export declare function logMetrics(label?: string): void; //# sourceMappingURL=performanceMonitor.d.ts.map