/** * @fileoverview Term Types Schema (SPEC Section 8) * * Terms represent argument values in the semantic structure. * Terms form a discriminated union with `kind` as discriminator (AD-INT-004). */ import { z } from "zod"; export declare const ExtSchema: z.ZodRecord; export type Ext = z.infer; /** * Reference kind for entity references. */ export declare const EntityRefKindSchema: z.ZodEnum<{ this: "this"; that: "that"; last: "last"; id: "id"; }>; export type EntityRefKind = z.infer; /** * Entity reference specification. * * | ref.kind | Description | * |----------|-------------| * | this | Currently focused entity | * | that | Previously mentioned entity | * | last | Most recent of type | * | id | Explicit identifier | */ export declare const EntityRefSchema: z.ZodObject<{ kind: z.ZodEnum<{ this: "this"; that: "that"; last: "last"; id: "id"; }>; id: z.ZodOptional; }, z.core.$strict>; export type EntityRef = z.infer; export declare const QuantityComparatorSchema: z.ZodEnum<{ eq: "eq"; gte: "gte"; lte: "lte"; }>; export type QuantityComparator = z.infer; export declare const QuantitySpecSchema: z.ZodObject<{ kind: z.ZodLiteral<"quantity">; value: z.ZodNumber; comparator: z.ZodOptional>; unit: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>; export type QuantitySpec = z.infer; /** * Reference to a domain entity. * * @example * { kind: "entity", entityType: "Order", ref: { kind: "last" } } * { kind: "entity", entityType: "User" } // collection scope */ export declare const EntityRefTermSchema: z.ZodObject<{ kind: z.ZodLiteral<"entity">; entityType: z.ZodString; ref: z.ZodOptional; id: z.ZodOptional; }, z.core.$strict>>; quant: z.ZodOptional; value: z.ZodNumber; comparator: z.ZodOptional>; unit: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>>; orderBy: z.ZodOptional; path: z.ZodString; ext: z.ZodOptional>; }, z.core.$strip>>; orderDir: z.ZodOptional>; ext: z.ZodOptional>; }, z.core.$strict>; export type EntityRefTerm = z.infer; /** * Reference to a semantic path in the domain. * * Path patterns may contain wildcards for dynamic segments. * * @example * { kind: "path", path: "state.user.email" } */ export declare const PathRefTermSchema: z.ZodObject<{ kind: z.ZodLiteral<"path">; path: z.ZodString; ext: z.ZodOptional>; }, z.core.$strict>; export type PathRefTerm = z.infer; /** * Artifact type classification. */ export declare const ArtifactTypeSchema: z.ZodEnum<{ plan: "plan"; code: "code"; text: "text"; math: "math"; data: "data"; mixed: "mixed"; }>; export type ArtifactType = z.infer; /** * Artifact reference specification. */ export declare const ArtifactRefSchema: z.ZodObject<{ kind: z.ZodEnum<{ id: "id"; inline: "inline"; }>; id: z.ZodOptional; }, z.core.$strict>; export type ArtifactRef = z.infer; /** * Reference to a document, formula, code, or data artifact. * * @example * { kind: "artifact", artifactType: "code", ref: { kind: "inline" }, content: "..." } * { kind: "artifact", artifactType: "math", ref: { kind: "id", id: "eq-1" } } */ export declare const ArtifactRefTermSchema: z.ZodObject<{ kind: z.ZodLiteral<"artifact">; artifactType: z.ZodEnum<{ plan: "plan"; code: "code"; text: "text"; math: "math"; data: "data"; mixed: "mixed"; }>; ref: z.ZodObject<{ kind: z.ZodEnum<{ id: "id"; inline: "inline"; }>; id: z.ZodOptional; }, z.core.$strict>; content: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>; export type ArtifactRefTerm = z.infer; /** * Value type classification. */ export declare const ValueTypeSchema: z.ZodEnum<{ string: "string"; number: "number"; boolean: "boolean"; date: "date"; enum: "enum"; id: "id"; }>; export type ValueType = z.infer; /** * Literal value with semantic shape. * * Shape stores semantic features/buckets, NOT raw values, for canonicalization (FDR-INT-005). * * @example * { kind: "value", valueType: "number", shape: { range: "1-100", sign: "positive" }, raw: 42 } * { kind: "value", valueType: "enum", shape: { domain: "status", value: "active" } } */ export declare const ValueTermSchema: z.ZodObject<{ kind: z.ZodLiteral<"value">; valueType: z.ZodEnum<{ string: "string"; number: "number"; boolean: "boolean"; date: "date"; enum: "enum"; id: "id"; }>; shape: z.ZodRecord; raw: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>; export type ValueTerm = z.infer; /** * Expression type classification. */ export declare const ExprTypeSchema: z.ZodEnum<{ code: "code"; latex: "latex"; ast: "ast"; }>; export type ExprType = z.infer; /** * Mathematical, logical, or code expression. * * Cross-field constraint: * - exprType "latex" | "code" -> expr must be string * - exprType "ast" -> expr must be object * * @example * { kind: "expr", exprType: "latex", expr: "\\int_0^1 x^2 dx" } * { kind: "expr", exprType: "ast", expr: { op: "add", left: 1, right: 2 } } */ export declare const ExprTermSchema: z.ZodObject<{ kind: z.ZodLiteral<"expr">; exprType: z.ZodEnum<{ code: "code"; latex: "latex"; ast: "ast"; }>; expr: z.ZodUnion]>; ext: z.ZodOptional>; }, z.core.$strict>; export type ExprTerm = z.infer; /** * Term represents argument values in the semantic structure. * * Per AD-INT-004, Term is a closed discriminated union with `kind` as discriminator. */ export declare const NonListTermSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"entity">; entityType: z.ZodString; ref: z.ZodOptional; id: z.ZodOptional; }, z.core.$strict>>; quant: z.ZodOptional; value: z.ZodNumber; comparator: z.ZodOptional>; unit: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>>; orderBy: z.ZodOptional; path: z.ZodString; ext: z.ZodOptional>; }, z.core.$strip>>; orderDir: z.ZodOptional>; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"path">; path: z.ZodString; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"artifact">; artifactType: z.ZodEnum<{ plan: "plan"; code: "code"; text: "text"; math: "math"; data: "data"; mixed: "mixed"; }>; ref: z.ZodObject<{ kind: z.ZodEnum<{ id: "id"; inline: "inline"; }>; id: z.ZodOptional; }, z.core.$strict>; content: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"value">; valueType: z.ZodEnum<{ string: "string"; number: "number"; boolean: "boolean"; date: "date"; enum: "enum"; id: "id"; }>; shape: z.ZodRecord; raw: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"expr">; exprType: z.ZodEnum<{ code: "code"; latex: "latex"; ast: "ast"; }>; expr: z.ZodUnion]>; ext: z.ZodOptional>; }, z.core.$strict>], "kind">; export declare const ListTermSchema: z.ZodObject<{ kind: z.ZodLiteral<"list">; items: z.ZodArray; entityType: z.ZodString; ref: z.ZodOptional; id: z.ZodOptional; }, z.core.$strict>>; quant: z.ZodOptional; value: z.ZodNumber; comparator: z.ZodOptional>; unit: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>>; orderBy: z.ZodOptional; path: z.ZodString; ext: z.ZodOptional>; }, z.core.$strip>>; orderDir: z.ZodOptional>; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"path">; path: z.ZodString; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"artifact">; artifactType: z.ZodEnum<{ plan: "plan"; code: "code"; text: "text"; math: "math"; data: "data"; mixed: "mixed"; }>; ref: z.ZodObject<{ kind: z.ZodEnum<{ id: "id"; inline: "inline"; }>; id: z.ZodOptional; }, z.core.$strict>; content: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"value">; valueType: z.ZodEnum<{ string: "string"; number: "number"; boolean: "boolean"; date: "date"; enum: "enum"; id: "id"; }>; shape: z.ZodRecord; raw: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"expr">; exprType: z.ZodEnum<{ code: "code"; latex: "latex"; ast: "ast"; }>; expr: z.ZodUnion]>; ext: z.ZodOptional>; }, z.core.$strict>], "kind">>; ordered: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>; export declare const TermSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"entity">; entityType: z.ZodString; ref: z.ZodOptional; id: z.ZodOptional; }, z.core.$strict>>; quant: z.ZodOptional; value: z.ZodNumber; comparator: z.ZodOptional>; unit: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>>; orderBy: z.ZodOptional; path: z.ZodString; ext: z.ZodOptional>; }, z.core.$strip>>; orderDir: z.ZodOptional>; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"path">; path: z.ZodString; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"artifact">; artifactType: z.ZodEnum<{ plan: "plan"; code: "code"; text: "text"; math: "math"; data: "data"; mixed: "mixed"; }>; ref: z.ZodObject<{ kind: z.ZodEnum<{ id: "id"; inline: "inline"; }>; id: z.ZodOptional; }, z.core.$strict>; content: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"value">; valueType: z.ZodEnum<{ string: "string"; number: "number"; boolean: "boolean"; date: "date"; enum: "enum"; id: "id"; }>; shape: z.ZodRecord; raw: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"expr">; exprType: z.ZodEnum<{ code: "code"; latex: "latex"; ast: "ast"; }>; expr: z.ZodUnion]>; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"list">; items: z.ZodArray; entityType: z.ZodString; ref: z.ZodOptional; id: z.ZodOptional; }, z.core.$strict>>; quant: z.ZodOptional; value: z.ZodNumber; comparator: z.ZodOptional>; unit: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>>; orderBy: z.ZodOptional; path: z.ZodString; ext: z.ZodOptional>; }, z.core.$strip>>; orderDir: z.ZodOptional>; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"path">; path: z.ZodString; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"artifact">; artifactType: z.ZodEnum<{ plan: "plan"; code: "code"; text: "text"; math: "math"; data: "data"; mixed: "mixed"; }>; ref: z.ZodObject<{ kind: z.ZodEnum<{ id: "id"; inline: "inline"; }>; id: z.ZodOptional; }, z.core.$strict>; content: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"value">; valueType: z.ZodEnum<{ string: "string"; number: "number"; boolean: "boolean"; date: "date"; enum: "enum"; id: "id"; }>; shape: z.ZodRecord; raw: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"expr">; exprType: z.ZodEnum<{ code: "code"; latex: "latex"; ast: "ast"; }>; expr: z.ZodUnion]>; ext: z.ZodOptional>; }, z.core.$strict>], "kind">>; ordered: z.ZodOptional; ext: z.ZodOptional>; }, z.core.$strict>], "kind">; export type NonListTerm = z.infer; export type ListTerm = z.infer; export type Term = z.infer; //# sourceMappingURL=term.d.ts.map