/** * Module map for resolving cross-file imports */ import { IrModule, Diagnostic } from "@tsonic/frontend"; import type { ModuleIdentity, ModuleMap, ExportSource, ExportMap } from "../../emitter-types/core.js"; export type { ModuleIdentity, ModuleMap, ExportSource, ExportMap }; /** * Normalize a file path for use as module map key * - Convert backslashes to forward slashes * - Remove .ts extension if present * - Normalize . and .. segments */ export declare const canonicalizeFilePath: (filePath: string) => string; /** * Result of building module map */ export type ModuleMapResult = { readonly ok: true; readonly value: ModuleMap; readonly exportMap: ExportMap; } | { readonly ok: false; readonly errors: readonly Diagnostic[]; }; /** * Build module map from IR modules. * Returns an error if any two files in the same namespace have the same * normalized class name (e.g., api-client.ts and apiclient.ts both map to "apiclient"). */ export declare const buildModuleMap: (modules: readonly IrModule[]) => ModuleMapResult; /** * Resolve a relative import path to a canonical file path */ export declare const resolveImportPath: (currentFilePath: string, importSource: string) => string; //# sourceMappingURL=module-map.d.ts.map