/** * Profile Cache * * In-memory cache for loaded StructureDefinitions * Reduces repeated file I/O and parsing */ import type { StructureDefinition } from '../core/structure-definition-loader'; export declare class ProfileCache { private cache; private enabled; private ttl; private maxSize; constructor(enabled?: boolean, maxSize?: number); /** * Get a profile from cache */ get(url: string): StructureDefinition | null; /** * Store a profile in cache */ set(url: string, profile: StructureDefinition): void; /** * Check if profile is in cache */ has(url: string): boolean; /** * Remove a profile from cache */ delete(url: string): void; /** * Clear entire cache */ clear(): void; /** * Get cache statistics */ getStats(): { size: number; maxSize: number; ttl: number; entries: Array<{ url: string; hits: number; age: number; }>; }; /** * Evict least recently used entry */ private evictLRU; /** * Enable/disable cache */ setEnabled(enabled: boolean): void; /** * Set TTL (time to live) in milliseconds */ setTTL(ttl: number): void; /** * Set max cache size */ setMaxSize(maxSize: number): void; } //# sourceMappingURL=profile-cache.d.ts.map