ProjectAnalysis
tcmts.core.analyze.ProjectAnalysis · #pyps5jtm · type
import type { ProjectDef, WatchRecord } from "#codebase/tcmts/core/analyze";
import type { Diagnostic } from "#codebase/tcmts/core/program";
import type { TypeChecker } from "#codebase/tcmts/core/ts";
import type { Program as ts_Program } from "typescript/sync";
export interface ProjectAnalysis {
program: ts_Program;
checker: TypeChecker;
diagnostics: Diagnostic[];
errors: string[];
warnings: string[];
defs: ProjectDef[];
watches: (WatchRecord & { file: string })[];
/**
* The exact version each pinned package range was checked against (`npm:ms@2` → `2.1.3`): definitions record
* the range, the codebase's lock records versions.
*/
packages: Record<string, string>;
/** let the compilation analyzed go, once nothing more is asked of `program` and `checker` (a one-off's is kept until) */
dispose?: () => void;
}
uses
used by