import type { ImageGenerationRequest, ImageGenerationResult, CacheConfig } from '../types/index.js'; interface CacheStats { hits: number; misses: number; entries: number; diskUsage: number; oldestEntry: number; newestEntry: number; } export declare class ImageCache { private cache; private config; private cacheDir; private metadataFile; private stats; constructor(config: CacheConfig); /** * Initialize cache system */ private initialize; /** * Generate cache key for a request */ private generateCacheKey; /** * Check if result exists in cache */ get(request: ImageGenerationRequest): Promise; /** * Store result in cache */ set(request: ImageGenerationRequest, result: ImageGenerationResult): Promise; /** * Clear all cached data */ clear(): Promise; /** * Get cache statistics */ getStats(): CacheStats; /** * Get cache hit rate */ getHitRate(): number; /** * Handle expired cache entry */ private handleExpiredEntry; /** * Handle deleted cache entry */ private handleDeletedEntry; /** * Cleanup image files */ private cleanupFiles; /** * Load metadata from disk */ private loadMetadata; /** * Save metadata to disk */ private saveMetadata; /** * Update disk usage statistics */ private updateDiskUsage; /** * Cleanup orphaned files (files without cache entries) */ private cleanupOrphanedFiles; /** * Get human-readable cache size */ getFormattedDiskUsage(): string; } /** * Initialize global cache instance */ export declare function initializeCache(config: CacheConfig): ImageCache; /** * Get global cache instance */ export declare function getCache(): ImageCache | null; export default ImageCache; //# sourceMappingURL=imageCache.d.ts.map