import type { LoadedFile, LoadedGraph, LoadedModule } from "@telorun/analyzer"; import type { DefinitionResult } from "../types.js"; /** The shape every navigation lookup reads off a `LoadedFile.manifests` entry. * Narrower than `ResourceManifest` on purpose — navigation only ever asks what * kind a doc is and what it is named. */ export interface NavigableManifest { kind?: string; metadata?: { name?: string; }; } /** The module whose owner or partials includes `filePath`. */ export declare function moduleForFile(graph: LoadedGraph, filePath: string): LoadedModule | undefined; /** Every file in a module's scope, owner first. */ export declare function moduleFiles(mod: LoadedModule): LoadedFile[]; /** First manifest across `files` satisfying `match`, located at its * `metadata.name` (or its first line as a fallback). Names are unique within a * module scope, so the first hit is the definition. */ export declare function locateManifest(files: LoadedFile[], match: (manifest: NavigableManifest) => boolean): DefinitionResult | undefined; /** The resource instance named `name` in a module scope. */ export declare function locateResource(files: LoadedFile[], name: string): DefinitionResult | undefined; /** The `Telo.Definition` / `Telo.Abstract` doc registering kind suffix `name`. * Filtered by doc kind so an instance sharing the name never shadows it. */ export declare function locateKindDefinition(files: LoadedFile[], name: string): DefinitionResult | undefined; /** The module doc's JSON projection, for reading its `exports` block. */ export declare function moduleDoc(mod: LoadedModule): Record | undefined; /** The module's `metadata.name` — the identity a canonical kind (`.`) * and an `ImportEdge.targetModuleName` are expressed in. */ export declare function moduleName(mod: LoadedModule): string | undefined; /** A dotted key path on the module doc (`imports.Http`, `variables.port`), * located at the key itself. */ export declare function locateModuleDocKey(mod: LoadedModule, path: string): DefinitionResult | undefined; /** Where the import bound to `alias` is declared: the `imports:` map entry, or * the legacy standalone `Telo.Import` doc named after the alias. */ export declare function locateImport(mod: LoadedModule, alias: string): DefinitionResult | undefined; //# sourceMappingURL=manifest-navigation.d.ts.map