/** * @fileoverview FileAccessor implementation for lazy file loading * * Provides lazy-loading file access with LRU caching for * analyzeAll mode checks that need to correlate across files. */ import type { FileAccessor } from './check-config.js'; import type { FileCache } from './file-cache.js'; /** Options for creating a FileAccessor instance. */ export interface FileAccessorOptions { readonly cacheCapacity?: number; readonly signal?: AbortSignal; /** * Content filtering applied before returning file content. See * BaseCheckConfig.contentFilter for the canonical doc. */ readonly contentFilter?: 'raw' | 'strip-strings' | 'strip-strings-and-comments'; /** * Per-run scope cache (`scope.fitness.fileCache`). When present, `read()` * resolves prewarmed content from it before hitting disk — closing the * analyzeAll global-cache miss (parallel-tool-invocations Phase 1). Optional: * the no-scope single-check direct path and isolated unit tests legitimately * have no scope cache and fall through to a disk read. The production * guarantee that the analyzeAll call site passes the scope cache is enforced * at the `createExecutionContext` resolve-or-throw boundary + a call-site test, * not by a required parameter. */ readonly fileCache?: FileCache; /** * Maximum concurrent disk/cache reads for readMany/readAll. Defaults to a * bounded value so repository-wide analyzeAll checks do not fan out one * promise per matched file. */ readonly readConcurrency?: number; } /** Create a FileAccessor for lazy-loading files with LRU caching. */ export declare function createFileAccessor(filePaths: readonly string[], options?: FileAccessorOptions): FileAccessor; //# sourceMappingURL=file-accessor.d.ts.map