/**
 * Enhanced Metrics Manager with performance optimization
 */
import { ProviderMetrics } from "./types.js";
export declare class MetricsManager {
    private static instance;
    private providerMetrics;
    private readonly MAX_ERROR_TYPES;
    private constructor();
    static getInstance(): MetricsManager;
    private initializeProviderMetrics;
    updateMetrics(provider: string, success: boolean, responseTime: number, errorType?: string): void;
    private trackError;
    getProviderMetrics(provider: string): ProviderMetrics | undefined;
    getAllMetrics(): Map<string, ProviderMetrics>;
    generatePerformanceReport(): string;
    getPerformanceInsights(): Record<string, any>;
    private getRecommendation;
    resetMetrics(provider?: string): void;
    exportMetrics(): Record<string, ProviderMetrics>;
}
//# sourceMappingURL=MetricsManager.d.ts.map