export type processFn = (fullpath: string, content: string) => T; export interface CacheItem { value: T; content: string; } export interface MinimalFS { readFileSync: (filePath: string, encoding: 'utf8') => string; } export interface FileProcessor { process: (filePath: string, invalidateCache?: boolean) => T; add: (filePath: string, value: T) => void; processContent: (content: string, filePath: string) => T; cache: Record>; postProcessors: Array<(value: T, path: string) => T>; } export declare function cachedProcessFile(processor: processFn, readFileSync: MinimalFS['readFileSync'], postProcessors?: Array<(value: T, path: string) => T>, cache?: { [key: string]: CacheItem; }): FileProcessor; //# sourceMappingURL=cached-process-file.d.ts.map