import React from 'react'; import { ExtendedDeviceInfo } from './real-time-device-monitor'; export interface PerformanceConfig { enableVirtualization: boolean; enableLazyLoading: boolean; enableMemoryManagement: boolean; enableRAFOptimization: boolean; enableComputationThrottling: boolean; enableGarbageCollection: boolean; maxCacheSize: number; memoryThreshold: number; throttleMs: number; virtualScrollBuffer: number; } export interface PerformanceMetrics { renderTime: number; updateCount: number; memoryUsage: number; frameRate: number; cacheHitRatio: number; gcCount: number; timestamp: number; } declare class MemoryManager { private static instance; private cache; private maxSize; private accessOrder; constructor(maxSize?: number); static getInstance(maxSize?: number): MemoryManager; set(key: string, value: any): void; get(key: string): any; clear(): void; getStats(): { size: number; maxSize: number; usage: number; }; } export declare const usePerformanceOptimizer: (config: Partial, deviceInfo: ExtendedDeviceInfo) => { metrics: PerformanceMetrics; measureRenderTime: () => void; recordRenderTime: () => void; throttledComputation: (computation: () => void, delay?: number) => void; cache: { get: (key: string) => any; set: (key: string, value: any) => void; clear: () => void; }; memoryManager: MemoryManager; isOptimized: boolean; }; interface PerformanceWrapperProps { children: React.ReactNode; config?: Partial; deviceInfo: ExtendedDeviceInfo; enableDebug?: boolean; } export declare const PerformanceWrapper: React.FC; interface VirtualizedListProps { items: any[]; itemHeight: number; containerHeight: number; renderItem: (item: any, index: number) => React.ReactNode; overscan?: number; } export declare const VirtualizedList: React.FC; interface LazyComponentProps { loader: () => Promise>; fallback?: React.ComponentType; threshold?: number; } export declare const LazyComponent: React.FC; export default PerformanceWrapper; //# sourceMappingURL=performance-optimizer.d.ts.map