/** Source location for diagnostics and tooling. */ export interface SourceLocation { readonly file: string; readonly line: number; readonly column: number; readonly endLine: number; readonly endColumn: number; } /** All primitive type names recognised by the language. */ export declare const PRIMITIVE_TYPES: readonly ["string", "integer", "decimal", "boolean", "uuid", "date", "datetime"]; export type PrimitiveTypeName = (typeof PRIMITIVE_TYPES)[number]; /** Discriminated union of all type expressions in the AST. */ export type TypeExpr = { readonly kind: 'primitive'; readonly name: PrimitiveTypeName; readonly location: SourceLocation; } | { readonly kind: 'ref'; readonly segments: readonly string[]; readonly location: SourceLocation; } | { readonly kind: 'generic'; readonly wrapper: string; readonly inner: TypeExpr; readonly location: SourceLocation; }; export declare const NODE_KINDS: readonly ["product", "module", "entity", "value", "enum", "rule", "actor", "capability", "workflow", "action", "event", "schedule", "surface", "rendering", "tokens", "theme", "strings", "serialization", "integration", "transport", "storage", "execution", "extension", "constitution", "security", "privacy", "validation", "secret", "environment", "deployment", "test", "product_ref"]; export type NodeKind = (typeof NODE_KINDS)[number]; export declare const EDGE_KINDS: readonly ["contains", "imports", "field_type", "input_type", "return_type", "payload_type", "contract_type", "reads", "writes", "uses_rule", "calls", "transitions", "triggers_on", "emits", "notifies", "invokes", "binds", "exposes_action", "contains_surface", "uses_serialization", "targets_surface", "uses_token", "extends_tokens", "references_string", "refines_entity", "refines_workflow", "refines_surface", "attaches_to", "uses_secret", "governs", "binds_secret", "includes_env", "tests", "authorized_as", "member_of", "product_dependency", "consumes_type", "consumes_event", "consumes_surface", "consumes_actor"]; export type EdgeKind = (typeof EDGE_KINDS)[number]; export type DiagnosticSeverity = 'error' | 'warning' | 'info'; export declare const DIAGNOSTIC_PHASES: readonly ["lexer", "parser", "binder", "checker", "validator", "graph", "registry", "planner", "test_runner", "verifier"]; export type DiagnosticPhase = (typeof DIAGNOSTIC_PHASES)[number]; export declare const DIAGNOSTIC_CATEGORIES: readonly ["lexical_error", "syntax_error", "resolution_error", "type_error", "semantic_error", "graph_error", "registry_error", "planning_error", "test_failure", "verification_error", "generation_error", "generation_warning", "seam_warning", "review_fix_error", "warning", "lint"]; export type DiagnosticCategory = (typeof DIAGNOSTIC_CATEGORIES)[number]; //# sourceMappingURL=types.d.ts.map