export declare class FileCache { private readonly baseDir; private readonly inflight; constructor(baseDir?: string); get(key: string, ttlMs?: number): Promise; set(key: string, data: T): Promise; /** * Returns cached value if present, otherwise calls fetchFn and caches the result. * Results that are null or undefined are NOT cached, so subsequent calls will retry. * Concurrent calls for the same key share a single fetchFn invocation. */ getOrFetch(key: string, ttlMs: number | undefined, fetchFn: () => Promise): Promise; private filePath; }