export type LanguageLayerTerms = Record; export type ForbiddenEntry = { term: string; replacement?: string; status?: "forbidden"; }; export type AuditIssue = { severity: "critical" | "warning"; rule: string; invariant?: string; message: string; match?: string; node?: string; relationship?: string; }; export type AuditResult = { passed: boolean; issues: AuditIssue[]; timestamp: number; }; export type LanguageReport = { planning: Array<{ term: string; status: string; }>; execution: Array<{ term: string; status: string; }>; governance: Array<{ term: string; status: string; }>; infrastructure: Array<{ term: string; status: string; }>; projection: Array<{ term: string; status: string; }>; workspace: Array<{ term: string; status: string; }>; forbidden: ForbiddenEntry[]; skr: { approvedNodes: Array<{ term: string; status: string; }>; approvedRelationships: Array<{ term: string; status: string; }>; forbiddenNodes: Array<{ term: string; status: string; }>; forbiddenRelationships: Array<{ term: string; status: string; }>; }; }; export type LoadFromFileResult = { loaded: boolean; layers: Record | null; forbidden: Array<{ term: string; replacement: string; }> | null; error: string | null; }; export declare class CanonicalLanguageAuditor { loadedFromFile: boolean; sourcePath: string; ubiquitousLanguage: LanguageLayerTerms; forbidden: { planning: string[]; architecture: string[]; }; skrForbiddenNodes: string[]; skrApprovedNodes: string[]; skrApprovedRelationships: string[]; skrForbiddenRelationships: string[]; constructor(options?: { sourcePath?: string; }); private _loadDefaults; loadFromFile(filePath?: string): Promise; auditSource(src: string): AuditResult; auditSKR(input: string | Record, options?: { isSourceCode?: boolean; }): AuditResult; private _isInfrastructureClass; auditDocs(_docsDir: string, _readFileFn?: (path: string) => Promise): AuditResult; getLanguageReport(): LanguageReport; }