/** * Memory Optimization - Advanced memory management and optimization * * Provides intelligent memory optimization, garbage collection, compression, * and performance tuning for the AI Integration memory system. */ import { EventEmitter } from 'eventemitter3'; import { MemoryEntry, OperationResult } from '../types'; export interface MemoryOptimizationConfig { maxMemoryUsage: number; compressionThreshold: number; gcInterval: number; retentionPolicies: RetentionPolicy[]; optimizationStrategies: OptimizationStrategy[]; } export interface RetentionPolicy { name: string; condition: (entry: MemoryEntry) => boolean; retentionDays: number; priority: number; } export interface OptimizationStrategy { name: string; trigger: (metrics: MemoryMetrics) => boolean; action: (optimizer: MemoryOptimization) => Promise; cooldownMs: number; } export interface MemoryMetrics { totalEntries: number; totalSizeBytes: number; memoryUsageMB: number; compressionRatio: number; hitRate: number; avgAccessTime: number; fragmentationRatio: number; gcFrequency: number; oldestEntryAge: number; newestEntryAge: number; } export interface OptimizationResult { strategy: string; entriesProcessed: number; bytesReclaimed: number; executionTimeMs: number; metricsImprovement: Partial; } export declare class MemoryOptimization extends EventEmitter { private config; private metrics; private memoryEntries; private accessLog; private compressionCache; private gcTimer; private strategyLastExecuted; constructor(config: MemoryOptimizationConfig); initialize(): Promise; private initializeMetrics; /** * Register memory entries for optimization */ registerEntries(entries: Map): void; /** * Track memory access for optimization decisions */ trackAccess(entryId: string, accessTime: number): void; /** * Run comprehensive memory optimization */ optimize(): Promise; private shouldExecuteStrategy; private executeStrategy; /** * Compress memory entries using various techniques */ compressEntries(compressionLevel?: number): Promise; private compressEntry; /** * Garbage collect old and unused entries */ garbageCollect(): Promise; /** * Defragment memory to reduce fragmentation */ defragment(): Promise; /** * Analyze access patterns for optimization insights */ analyzeAccessPatterns(): any; private calculateAccessThreshold; /** * Preload frequently accessed entries */ preloadOptimizations(): Promise; private calculateEntrySize; private updateMetrics; private setupOptimizationStrategies; private startGarbageCollection; /** * Get current optimization metrics */ getMetrics(): MemoryMetrics; /** * Generate optimization recommendations */ getRecommendations(): string[]; shutdown(): Promise; } //# sourceMappingURL=MemoryOptimization.d.ts.map