next
Version:
The React Framework
30 lines (29 loc) • 1.25 kB
TypeScript
import type { CacheHandler, CacheHandlerContext, CacheHandlerValue } from '.';
import type { CacheFs } from '../../../shared/lib/utils';
import { type IncrementalCacheValue, type SetIncrementalFetchCacheContext, type SetIncrementalResponseCacheHandlerContext } from '../../response-cache';
type FileSystemCacheContext = Omit<CacheHandlerContext, 'fs' | 'serverDistDir'> & {
fs: CacheFs;
serverDistDir: string;
};
export default class FileSystemCache implements CacheHandler {
private fs;
private flushToDisk?;
private serverDistDir;
private revalidatedTags;
private static debug;
private static memoryCache;
private static readonly seedReads;
constructor(ctx: FileSystemCacheContext);
resetRequestCache(): void;
private getSeedReadState;
private beginSeedRead;
private finishSeedRead;
revalidateTag(tags: string | string[], durations?: {
expire?: number;
}): Promise<void>;
get(...args: Parameters<CacheHandler['get']>): Promise<CacheHandlerValue | null>;
private promoteSeed;
set(key: string, data: IncrementalCacheValue | null, ctx: SetIncrementalFetchCacheContext | SetIncrementalResponseCacheHandlerContext): Promise<void>;
private getFilePath;
}
export {};