import { IInitOptions } from 'jgb-shared/lib';
import { IPipelineProcessed } from 'Pipeline.js';
export default class FSCache {
    dir: string;
    dirExistsPromise: Promise<void>;
    invalidated: Set<unknown>;
    optionsHash: any;
    constructor(options: IInitOptions);
    ensureDirExists(): Promise<void>;
    getCacheFile(filename: string): Promise<string>;
    getLastModified(filename: string): Promise<number>;
    writeDepMtimes(data: IPipelineProcessed): Promise<void>;
    write(filename: string, data: IPipelineProcessed): Promise<void>;
    checkDepMtimes(data: any): Promise<boolean>;
    read(filename: string): Promise<any>;
    invalidate(filename: string): void;
    delete(filename: string): Promise<void>;
}
