import { default as React } from 'react'; export interface PerformanceMetrics { LCP?: number; INP?: number; CLS?: number; FCP?: number; TTFB?: number; routeChangeTime?: number; componentRenderTime?: number; apiResponseTime?: number; bundleLoadTime?: number; connection?: string; deviceMemory?: number; hardwareConcurrency?: number; viewport?: { width: number; height: number; }; timestamp: number; } declare class PerformanceMonitor { private metrics; private observers; private reportCallback?; private performanceMarks; constructor(reportCallback?: (metrics: PerformanceMetrics) => void); private initializeWebVitals; private initializeCustomObservers; private collectDeviceInfo; private reportMetric; private trackResourceLoad; measureComponentRender(componentName: string, renderTime: number): void; measureAPICall(endpoint: string, responseTime: number): void; measureRouteChange(route: string, changeTime: number): void; markStart(name: string): void; markEnd(name: string): void; trackRouteChange(route: string, pathOrTime: string | number, changeTime?: number): void; getSummary(): any; private calculateScore; getMetrics(): PerformanceMetrics; cleanup(): void; } export declare const initializePerformanceMonitoring: (reportCallback?: (metrics: PerformanceMetrics) => void) => PerformanceMonitor; export declare const getPerformanceMonitor: () => PerformanceMonitor | null; export declare const useComponentPerformance: (componentName: string) => void; export declare const withPerformanceTracking:

(Component: React.ComponentType

, componentName: string) => React.ForwardRefExoticComponent & React.RefAttributes>; export declare const measureAsyncOperation: (operation: () => Promise, operationName: string) => Promise; export interface PerformanceBudget { LCP?: number; INP?: number; CLS?: number; FCP?: number; TTFB?: number; bundleSize?: number; } export declare const defaultPerformanceBudget: PerformanceBudget; export declare const checkPerformanceBudget: (metrics: PerformanceMetrics, budget?: PerformanceBudget) => { passed: boolean; violations: string[]; }; export declare const exportPerformanceData: (metrics?: PerformanceMetrics) => string; export default PerformanceMonitor; //# sourceMappingURL=performance-monitoring.d.ts.map