export declare function cacheHit(path: string, stat: { mtimeMs: number; size: number; }): T | undefined; export declare function cacheSet(path: string, value: unknown, stat: { mtimeMs: number; size: number; }): void; export declare function cacheDelete(path: string): void; export declare class JsonFile { readonly path: string; private readonly empty; /** * The write root as it stood when this store was created. Captured once, on * purpose: the root must not be re-derived at write time, because * `resolveAnimaHome()` picks a different directory once the current one is * deleted. See storage/write-root.ts. */ private readonly writeRoot; constructor(path: string, empty: () => T, writeRoot?: string); read(): Promise; write(value: T): Promise; update(op: (current: T) => T | Promise): Promise; private refreshCache; private readUnlocked; } export declare function statOrNull(path: string): Promise<{ mtimeMs: number; size: number; } | undefined>; export declare function isMissingFile(error: unknown): boolean; //# sourceMappingURL=json-file.d.ts.map