/**
 * Performance Metrics Infrastructure
 * Centralized performance tracking system used across all services
 */
export interface PerformanceMetrics {
    totalRequests: number;
    averageResponseTime: number;
    successRate: number;
    queueSize: number;
    memoryUsage: NodeJS.MemoryUsage;
    uptime: number;
}
export interface PerformanceData {
    totalRequests: number;
    totalResponseTime: number;
    successCount: number;
    startTime: number;
}
export declare class PerformanceTracker {
    private metrics;
    /**
     * Track a successful request
     */
    trackSuccess(responseTime?: number): void;
    /**
     * Track a failed request
     */
    trackError(responseTime?: number): void;
    /**
     * Track a request with timing
     */
    trackRequest<T>(operation: () => Promise<T>): Promise<T>;
    /**
     * Get current performance metrics
     */
    getMetrics(): PerformanceMetrics;
    /**
     * Reset metrics
     */
    reset(): void;
    /**
     * Get raw metrics data
     */
    getRawData(): PerformanceData;
}
/**
 * Global performance tracker instance
 */
export declare const globalPerformanceTracker: PerformanceTracker;
