import type { ProjectReadBoundary, ProjectReadTreeEntry } from "./bootstrap-write-boundary.js"; export type ProjectSnapshotFile = { readonly absolutePath: string; readonly bytes: Buffer; readonly relativePath: string; readonly text: string; }; export declare class ProjectReadSnapshot { #private; constructor(projectDir: string, entries: readonly ProjectReadTreeEntry[]); hasDirectory(relativePath: string): boolean; hasFile(relativePath: string): boolean; readFile(relativePath: string, maxBytes?: number): Buffer | undefined; readText(relativePath: string, maxBytes?: number): string | undefined; filesUnder(relativeRoot: string, options?: { readonly extensions?: readonly string[]; readonly maxEntries?: number; readonly maxFileBytes?: number; readonly maxTotalBytes?: number; }): readonly ProjectSnapshotFile[] | undefined; } export declare function captureProjectReadSnapshot(projectDir: string, boundary: ProjectReadBoundary): ProjectReadSnapshot; export declare function containedProjectRelativePath(projectDir: string, configuredPath: string): string | undefined;