import type { ConversionUnit } from "../../workflows/types.ts"; import { type DiagnosticSeverity } from "./requirement-rules.ts"; export interface UnresolvedFacet { id: string; question: string; example: string; } export interface SpecDiagnostic { code: "E-UNDERSPECIFIED" | "E-IMPORT-UNRESOLVED"; rule: string; severity: DiagnosticSeverity; sourcePath: string; line?: number; targetPath: string; message: string; facets: UnresolvedFacet[]; } export interface FacetResolution { id: string; question: string; example: string; satisfied: boolean; } export interface SpecExplanation { rule: string; sourcePath: string; line?: number; targetPath: string; facets: FacetResolution[]; } export interface DiagnoseOptions { vocabulary?: Readonly>; } export declare function explainUnit(unit: ConversionUnit, options?: DiagnoseOptions): SpecExplanation[]; export declare function diagnoseUnit(unit: ConversionUnit, options?: DiagnoseOptions): SpecDiagnostic[]; export declare function diagnoseUnits(units: readonly ConversionUnit[], options?: DiagnoseOptions): SpecDiagnostic[]; /** Stable facet record included in compile-key inputs. */ export declare function resolvedFacetRecord(unit: ConversionUnit, options?: DiagnoseOptions): Record; //# sourceMappingURL=spec-diagnostics.d.ts.map