import type { KnowledgeAdapterRegistry } from "./adapter-registry.js"; import type { ProjectManifest, ProjectStructure } from "./types.js"; export declare const MAX_PROJECT_MANIFEST_BYTES: number; /** * One disposable reader per code generation. Discover ancestor manifests once; * recheck known boundaries (including removed ones) and root manifests on queries. * New nested manifests require index refresh/update, as new source files do. * Retain compact parsed data, not manifest text or missing ancestor records. */ export declare class ProjectStructureReader { readonly repositoryRoot: string; private candidates; private records; private current?; private pending?; private patterns; /** Conservative admission estimate; not a V8 heap measurement. */ estimatedBytes: number; constructor(repositoryRoot: string, paths: Iterable, registry: KnowledgeAdapterRegistry); load(): Promise; private read; private refresh; } export declare function nearestProjectManifest(structure: ProjectStructure, source: string, fileName: string): ProjectManifest | undefined; //# sourceMappingURL=project-structure.d.ts.map