/** * @typedef {Object} ResolveCtx * @property {(p: string) => boolean} has membership test over all indexed paths * @property {Map} pyByBase python module index (basename → defs) */ /** * Build the per-pass resolution context from the full current file list (paths only — no reads). * The python index keys every `.py` file by its dotted-module suffix so an absolute import * `aurora_core.activation.base_level` can be matched against `…/aurora_core/activation/base_level.py` * regardless of the source-root prefix (`packages/core/src/…`). * @param {string[]} paths repo-relative paths currently indexed * @returns {ResolveCtx} */ export function buildResolveCtx(paths: string[]): ResolveCtx; /** * Resolve one file's raw import specifiers to intra-repo destination paths. * @param {string} format "py" | "js" | "ts" (others → no edges) * @param {string} fromPath importer repo-relative path * @param {string[]} specs raw specifiers from the chunker * @param {ResolveCtx} ctx per-pass resolution context * @returns {string[]} deduped intra-repo destination paths (self-edges removed) */ export function resolveImports(format: string, fromPath: string, specs: string[], ctx: ResolveCtx): string[]; export type ResolveCtx = { /** * membership test over all indexed paths */ has: (p: string) => boolean; /** * python module index (basename → defs) */ pyByBase: Map; };