import { MemoryProfile, OptimizationConfig } from './types.js'; export declare class MemoryManager { private static instance; private config; private memoryProfiles; private caches; private monitoringInterval?; private gcThreshold; private lastGC; constructor(config: OptimizationConfig['memory']); static getInstance(config?: OptimizationConfig['memory']): MemoryManager; private startMonitoring; private recordMemoryUsage; private checkMemoryThresholds; private cleanupCaches; private evictLeastRecentlyUsedCaches; private emergencyCleanup; private triggerGarbageCollection; registerCache(name: string, cache: any): void; unregisterCache(name: string): void; getTotalCacheSize(): number; getMemoryStats(): { current: MemoryProfile; history: MemoryProfile[]; cacheSize: number; cacheCount: number; thresholds: { maxHeap: number; gcThreshold: number; cacheEvictionThreshold: number; }; }; optimizeMemoryUsage(): Promise; createMemoryEfficientArray(initialCapacity?: number): MemoryEfficientArray; createMemoryEfficientMap(maxSize?: number): MemoryEfficientMap; setMemoryThresholds(config: Partial): void; private getGCCount; destroy(): void; } export declare class MemoryEfficientArray { private chunks; private chunkSize; private _length; constructor(chunkSize?: number); push(item: T): void; get(index: number): T | undefined; get length(): number; [Symbol.iterator](): Iterator; clear(): void; } export declare class MemoryEfficientMap { private map; private maxSize; constructor(maxSize: number); set(key: K, value: V): void; get(key: K): V | undefined; has(key: K): boolean; delete(key: K): boolean; clear(): void; get size(): number; private evictOldest; } //# sourceMappingURL=MemoryManager.d.ts.map