import ts from "typescript"; /** * Hold shared compiler state for metadata parsing and symbol resolution. * * @category Types */ export interface AnalysisContext { allowedExternalPackages: Set; checker: ts.TypeChecker; packageNameCache: Map; projectRoot: string; program: ts.Program; recursionGuard: Set; } /** * Read the failure code attached to one tagged metadata analysis error. * * @param error Error returned from metadata analysis or TypeScript diagnostics. * @returns The tagged failure code when the error originated from TypeScript diagnostics. * @category Schema */ export declare function getTaggedSyncBlockMetadataFailureCode(error: Error): "typescript-diagnostic" | undefined; /** * Create or reuse the compiler analysis context for one metadata source file. * * @param projectRoot Project root used for module resolution and dependency tracking. * @param typesFilePath Absolute path to the source types file being analyzed. * @returns An analysis context containing the TypeScript program, checker, and recursion guards. * @category Schema */ export declare function createAnalysisContext(projectRoot: string, typesFilePath: string): AnalysisContext;