export declare type processFn = (fullpath: string, content: string) => T; export interface CacheItem { value: T; stat: { mtime: Date; }; } export interface MinimalFS { statSync: (fullpath: string) => { mtime: Date; }; readFileSync: (fullpath: string, encoding: 'utf8') => string; readlinkSync(path: string): string; } export interface FileProcessor { process: (fullpath: string, ignoreCache?: boolean, context?: string) => T; add: (fullpath: string, value: T) => void; processContent: (content: string, fullpath: string) => T; cache: Record>; postProcessors: Array<(value: T, path: string) => T>; resolvePath: (path: string, context?: string) => string; } export declare function cachedProcessFile(processor: processFn, fs: MinimalFS, resolvePath: (path: string, context?: string) => string): FileProcessor; //# sourceMappingURL=cached-process-file.d.ts.map