import type { AgencyProgram } from "../types.js"; import type { SourceLocation } from "../types/base.js"; import type { SymbolTable } from "../symbolTable.js"; /** * An import that cannot be resolved (unknown symbol, non-exported symbol, a * misused marker, …). Carries the offending import statement's `loc` so * callers can anchor a diagnostic to it instead of falling back to the top of * the file. The LSP relies on this to report the error on the import line * while still type-checking the rest of the document. */ export declare class ImportResolutionError extends Error { loc?: SourceLocation; constructor(message: string, loc?: SourceLocation); } export declare function resolveImports(program: AgencyProgram, symbolTable: SymbolTable, currentFile: string, opts?: { allowTestImports?: boolean; onUnresolvable?: (err: ImportResolutionError) => void; }): AgencyProgram;