UNPKG

ai-debug-local-mcp

Version:

🎯 ENHANCED AI GUIDANCE v4.1.2: Dramatically improved tool descriptions help AI users choose the right tools instead of 'close enough' options. Ultra-fast keyboard automation (10x speed), universal recording, multi-ecosystem debugging support, and compreh

125 lines • 3.02 kB
/** * 🧠 Intelligent Caching System for AI-Debug * * Caches expensive operations and system information to improve performance * Uses smart invalidation and memory management */ import { EventEmitter } from 'events'; export interface CacheEntry<T> { value: T; timestamp: number; ttl: number; hits: number; lastAccess: number; size: number; } export interface CacheOptions { ttl?: number; maxSize?: number; maxEntries?: number; onEvict?: (key: string, value: any) => void; } export declare class IntelligentCache<T = any> extends EventEmitter { private cache; private options; private totalSize; constructor(options?: CacheOptions); /** * Get value from cache with automatic validation */ get(key: string): T | null; /** * Set value in cache with intelligent eviction */ set(key: string, value: T, options?: { ttl?: number; priority?: number; }): void; /** * Get or compute value with caching */ getOrCompute(key: string, compute: () => Promise<T>, options?: { ttl?: number; priority?: number; }): Promise<T>; /** * Delete entry from cache */ delete(key: string): boolean; /** * Clear all entries */ clear(): void; /** * Get cache statistics */ getStats(): { entries: number; totalSize: number; hitRate: number; averageAge: number; memoryUsage: string; }; /** * Cleanup expired entries */ private cleanup; /** * Evict least recently used entry */ private evictLeastUsed; /** * Estimate memory size of value */ private estimateSize; } /** * System Information Cache - Caches expensive system queries */ export declare class SystemInfoCache { private windowsCache; private processCache; private screenCache; /** * Cache window information */ getWindowInfo(appName: string): Promise<any>; /** * Cache process information */ getProcessInfo(pid: number): Promise<any>; /** * Cache screen information */ getScreenInfo(): Promise<any>; /** * Invalidate cache for specific app when windows change */ invalidateWindowCache(appName?: string): void; private discoverWindows; private queryProcessInfo; private queryScreenInfo; /** * Get combined cache statistics */ getStats(): any; } /** * Global system cache instance */ export declare const systemCache: SystemInfoCache; /** * Performance-optimized file system cache */ export declare class FileSystemCache extends IntelligentCache<Buffer | string> { constructor(); /** * Cache file contents with hash-based invalidation */ getFileContents(filePath: string): Promise<string | null>; } /** * Global file system cache */ export declare const fileCache: FileSystemCache; //# sourceMappingURL=intelligent-caching-system.d.ts.map