@ldclabs/kip-lang 0.3.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/LICENSE +21 -0
  3. package/README.md +133 -44
  4. package/dist/ast.d.ts +519 -144
  5. package/dist/ast.d.ts.map +1 -1
  6. package/dist/budget.d.ts +37 -0
  7. package/dist/budget.d.ts.map +1 -0
  8. package/dist/budget.js +105 -0
  9. package/dist/budget.js.map +1 -0
  10. package/dist/diagnostics.d.ts +8 -2
  11. package/dist/diagnostics.d.ts.map +1 -1
  12. package/dist/diagnostics.js +32 -3
  13. package/dist/diagnostics.js.map +1 -1
  14. package/dist/errors.d.ts +29 -0
  15. package/dist/errors.d.ts.map +1 -0
  16. package/dist/errors.js +27 -0
  17. package/dist/errors.js.map +1 -0
  18. package/dist/exec-ast.d.ts +679 -0
  19. package/dist/exec-ast.d.ts.map +1 -0
  20. package/dist/exec-ast.js +24 -0
  21. package/dist/exec-ast.js.map +1 -0
  22. package/dist/formatter.d.ts.map +1 -1
  23. package/dist/formatter.js +870 -479
  24. package/dist/formatter.js.map +1 -1
  25. package/dist/index.d.ts +9 -3
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +6 -2
  28. package/dist/index.js.map +1 -1
  29. package/dist/lexer.d.ts.map +1 -1
  30. package/dist/lexer.js +46 -33
  31. package/dist/lexer.js.map +1 -1
  32. package/dist/lower.d.ts +17 -0
  33. package/dist/lower.d.ts.map +1 -0
  34. package/dist/lower.js +1566 -0
  35. package/dist/lower.js.map +1 -0
  36. package/dist/parser.d.ts.map +1 -1
  37. package/dist/parser.js +2476 -1152
  38. package/dist/parser.js.map +1 -1
  39. package/dist/semantics.d.ts +11 -7
  40. package/dist/semantics.d.ts.map +1 -1
  41. package/dist/semantics.js +295 -180
  42. package/dist/semantics.js.map +1 -1
  43. package/dist/token.d.ts +130 -40
  44. package/dist/token.d.ts.map +1 -1
  45. package/dist/token.js +264 -83
  46. package/dist/token.js.map +1 -1
  47. package/dist/version.d.ts +13 -0
  48. package/dist/version.d.ts.map +1 -0
  49. package/dist/version.js +13 -0
  50. package/dist/version.js.map +1 -0
  51. package/package.json +36 -6
  52. package/src/ast.ts +914 -0
  53. package/src/budget.ts +108 -0
  54. package/src/diagnostics.ts +182 -0
  55. package/src/errors.ts +42 -0
  56. package/src/exec-ast.ts +614 -0
  57. package/src/formatter.ts +1339 -0
  58. package/src/index.ts +226 -0
  59. package/src/lexer.ts +459 -0
  60. package/src/lower.ts +2011 -0
  61. package/src/parser.ts +3506 -0
  62. package/src/semantics.ts +392 -0
  63. package/src/token.ts +408 -0
  64. package/src/version.ts +13 -0
@@ -0,0 +1,679 @@
1
+ /**
2
+ * The *executable* KIP 2.0 AST.
3
+ *
4
+ * This is a different tree from `ast.ts`, on purpose. `ast.ts` is a syntax
5
+ * tree: it keeps ranges, comments, quoting style and raw number text, because
6
+ * a formatter and an editor need to reproduce the source. This tree is what an
7
+ * engine needs instead — every construct already collapsed to the one shape it
8
+ * means, with the open-ended parts of the grammar closed:
9
+ *
10
+ * - a predicate is an atom or a path, not a nested alternation/quantifier tree;
11
+ * - a filter is a comparison, a logical node, a negation, or a call to one of
12
+ * the registered functions, not a general expression tree;
13
+ * - a variable is a name and a path of steps, not a chain of member accesses;
14
+ * - `ASSERT` is gone: it has been desugared to the parts it is defined as.
15
+ *
16
+ * A consumer switching on these tags is total: there is no "some other
17
+ * function name" case to defend against, because `lower` rejected it.
18
+ *
19
+ * The shape follows serde's default externally-tagged enum encoding, so a
20
+ * Rust engine can consume it directly and a differential test can compare the
21
+ * two field for field.
22
+ */
23
+ /**
24
+ * A `data_value`: a value that may still contain unbound parameters.
25
+ *
26
+ * The grammar admits `parameter` at every depth of an array or object, so no
27
+ * assignment, option block or epistemic setting is plain JSON. A subtree with
28
+ * nothing left to bind collapses to `Value`; anything else keeps its shape so
29
+ * the runtime envelope can fill the holes without touching text.
30
+ */
31
+ export type BoundValue = {
32
+ Value: KipValue;
33
+ } | {
34
+ Param: string;
35
+ } | {
36
+ Handle: string;
37
+ } | {
38
+ Variable: DotPathVar;
39
+ } | {
40
+ Array: BoundValue[];
41
+ } | {
42
+ Object: [string, BoundValue][];
43
+ };
44
+ /**
45
+ * A KIP literal. Externally tagged; `Null` is a bare string.
46
+ *
47
+ * Arrays and objects are not baseline Core Literals (Spec §9.2); they appear
48
+ * here only as the option/assignment payloads that the grammar admits.
49
+ */
50
+ export type KipValue = 'Null' | {
51
+ Bool: boolean;
52
+ } | {
53
+ Number: number;
54
+ } | {
55
+ String: string;
56
+ } | {
57
+ Array: KipValue[];
58
+ } | {
59
+ Object: Record<string, KipValue>;
60
+ };
61
+ /**
62
+ * A value slot the grammar spells `parameter | literal`.
63
+ *
64
+ * KIP 2.0 parameters are structurally bound data, never string-spliced, so an
65
+ * unbound `:name` survives lowering as a `Param` for the runtime envelope to
66
+ * fill — it is not an error and never becomes text.
67
+ */
68
+ export type Scalar = {
69
+ Literal: KipValue;
70
+ } | {
71
+ Param: string;
72
+ };
73
+ /** A schema symbol: `string_literal | parameter`. */
74
+ export type SymbolRef = {
75
+ Name: string;
76
+ } | {
77
+ Param: string;
78
+ };
79
+ /** A mutation target: `variable | parameter | string_literal`. */
80
+ export type ElementRef = {
81
+ Handle: string;
82
+ } | {
83
+ Param: string;
84
+ } | {
85
+ Id: string;
86
+ };
87
+ /** One parsed command. */
88
+ export type Command = {
89
+ Kql: KqlQuery;
90
+ } | {
91
+ Kml: KmlStatement;
92
+ } | {
93
+ Meta: MetaCommand;
94
+ };
95
+ /** `?var` plus a resolved path, e.g. `?x.facets["MnemonicState"].salience`. */
96
+ export interface DotPathVar {
97
+ var: string;
98
+ path: PathStep[];
99
+ }
100
+ /** A dot step names a field; an index step keys into a map-valued field. */
101
+ export type PathStep = {
102
+ Field: string;
103
+ } | {
104
+ Key: string;
105
+ };
106
+ /** `predicate_atom` — the exact predicate slot. */
107
+ export type PredAtom = {
108
+ Variable: string;
109
+ } | {
110
+ Literal: string;
111
+ } | {
112
+ Param: string;
113
+ };
114
+ export interface HopRange {
115
+ min: number;
116
+ /** `null` means unbounded. */
117
+ max: number | null;
118
+ }
119
+ export interface PredPathAtom {
120
+ predicate: PredAtom;
121
+ hops: HopRange | null;
122
+ }
123
+ /**
124
+ * `Atom` is the plain predicate every language accepts. `Path` carries the
125
+ * KQL-only traversal forms — alternation and hop quantifiers — which never
126
+ * propagate belief and are rejected in KML and EXPORT selections.
127
+ */
128
+ export type PredTerm = {
129
+ Atom: PredAtom;
130
+ } | {
131
+ Path: PredPathAtom[];
132
+ };
133
+ /** One endpoint of a tuple. A term may itself be a tuple: KIP states things about statements. */
134
+ export type Term = {
135
+ Variable: string;
136
+ } | {
137
+ Param: string;
138
+ } | {
139
+ Literal: KipValue;
140
+ } | {
141
+ Match: ObjectMatcher;
142
+ } | {
143
+ Proposition: PropositionMatcher;
144
+ };
145
+ /**
146
+ * `object_pattern` — an open, schema-validated field map.
147
+ *
148
+ * Unlike KIP 1.x, v2 does not close this to a fixed set of identity forms:
149
+ * which fields identify an element is Schema's decision, not the grammar's.
150
+ */
151
+ export type ObjectMatcher = Record<string, MatchValue>;
152
+ export type MatchValue = {
153
+ Variable: string;
154
+ } | {
155
+ Param: string;
156
+ } | {
157
+ Literal: KipValue;
158
+ } | {
159
+ Array: MatchValue[];
160
+ } | {
161
+ Match: ObjectMatcher;
162
+ } | {
163
+ Proposition: PropositionMatcher;
164
+ };
165
+ export interface PropositionTriple {
166
+ subject: Term;
167
+ predicate: PredTerm;
168
+ object: Term;
169
+ }
170
+ /**
171
+ * The Proposition expression slot (Spec §43.2).
172
+ *
173
+ * `Tuple` addresses a Proposition by structure, `Id` by record identity. Both
174
+ * live in the same slot, which is why an id reference works everywhere a
175
+ * triple does — including as a {@link Term} endpoint. `Id` is match-only: it
176
+ * never resolves-or-creates, so `lower` rejects it in ENSURE PROPOSITION and
177
+ * in the ASSERT sugar that desugars through it.
178
+ */
179
+ export type PropositionMatcher = {
180
+ Tuple: PropositionTriple;
181
+ } | {
182
+ Id: Scalar;
183
+ };
184
+ export interface KqlQuery {
185
+ find_clause: FindClause;
186
+ where_clauses: WhereClause[];
187
+ /** Cognitive history basis — what the Brain contained/believed then. */
188
+ as_of: AsOf | null;
189
+ /** World-valid time — what was applicable then. An independent axis. */
190
+ for_time: Scalar | null;
191
+ epistemic: Record<string, BoundValue> | null;
192
+ order_by: OrderByItem[] | null;
193
+ limit: Scalar | null;
194
+ cursor: Scalar | null;
195
+ }
196
+ export type AsOf = {
197
+ Seq: Scalar;
198
+ } | {
199
+ Tx: Scalar;
200
+ } | {
201
+ Time: Scalar;
202
+ };
203
+ export interface FindClause {
204
+ expressions: FindExpression[];
205
+ }
206
+ export type FindExpression = {
207
+ Variable: DotPathVar;
208
+ } | {
209
+ Aggregation: {
210
+ func: AggregationFunction;
211
+ var: DotPathVar;
212
+ distinct: boolean;
213
+ };
214
+ };
215
+ export type AggregationFunction = 'Count' | 'Sum' | 'Avg' | 'Min' | 'Max';
216
+ export interface OrderByItem {
217
+ variable: DotPathVar;
218
+ direction: OrderDirection;
219
+ aggregation: AggregationFunction | null;
220
+ }
221
+ export type OrderDirection = 'Asc' | 'Desc';
222
+ export type WhereClause = {
223
+ Concept: {
224
+ variable: string;
225
+ matcher: ObjectMatcher;
226
+ };
227
+ } | {
228
+ Proposition: {
229
+ variable: string | null;
230
+ matcher: PropositionMatcher;
231
+ };
232
+ } | {
233
+ Assertion: {
234
+ variable: string;
235
+ matcher: ObjectMatcher;
236
+ };
237
+ } | {
238
+ Evidence: {
239
+ variable: string;
240
+ matcher: ObjectMatcher;
241
+ };
242
+ } | {
243
+ Activity: {
244
+ variable: string;
245
+ matcher: ObjectMatcher;
246
+ };
247
+ } | {
248
+ Structural: {
249
+ variable: string | null;
250
+ subject: Term;
251
+ field: SymbolRef;
252
+ object: Term;
253
+ };
254
+ } | {
255
+ Belief: {
256
+ variable: string;
257
+ target: BeliefTarget;
258
+ };
259
+ } | {
260
+ BeliefSlot: {
261
+ variable: string;
262
+ subject: Term;
263
+ predicate: PredAtom;
264
+ };
265
+ } | {
266
+ Filter: {
267
+ expression: FilterExpression;
268
+ };
269
+ } | {
270
+ Not: WhereClause[];
271
+ } | {
272
+ Optional: WhereClause[];
273
+ } | {
274
+ Union: WhereClause[];
275
+ };
276
+ /**
277
+ * What a BELIEF projects: an already-bound Proposition variable, a Proposition
278
+ * named by id, or a tuple stated inline.
279
+ *
280
+ * `BELIEF (...)` is the Proposition expression slot, so the id form that names
281
+ * a Proposition in a pattern names it here too (Spec §43.2 / §46.1). The
282
+ * inline tuple always carries an exact predicate: projection never walks a
283
+ * raw path (Spec §45).
284
+ */
285
+ export type BeliefTarget = {
286
+ Proposition: string;
287
+ } | {
288
+ Id: Scalar;
289
+ } | {
290
+ Tuple: PropositionTriple;
291
+ };
292
+ export type FilterExpression = {
293
+ Comparison: {
294
+ left: FilterOperand;
295
+ operator: ComparisonOperator;
296
+ right: FilterOperand;
297
+ };
298
+ } | {
299
+ Logical: {
300
+ left: FilterExpression;
301
+ operator: LogicalOperator;
302
+ right: FilterExpression;
303
+ };
304
+ } | {
305
+ Not: FilterExpression;
306
+ } | {
307
+ Function: {
308
+ func: FilterFunction;
309
+ args: FilterOperand[];
310
+ };
311
+ };
312
+ export type FilterOperand = {
313
+ Variable: DotPathVar;
314
+ } | {
315
+ Literal: KipValue;
316
+ } | {
317
+ Param: string;
318
+ } | {
319
+ List: FilterOperand[];
320
+ } | {
321
+ Negate: FilterOperand;
322
+ };
323
+ export type ComparisonOperator = 'Equal' | 'NotEqual' | 'LessThan' | 'GreaterThan' | 'LessEqual' | 'GreaterEqual';
324
+ export type LogicalOperator = 'And' | 'Or';
325
+ export type FilterFunction = 'Contains' | 'StartsWith' | 'EndsWith' | 'Regex'
326
+ /** `IN(?expr, [a, b])` — membership. A function, not a comparison operator. */
327
+ | 'In' | 'IsNull' | 'IsNotNull' | 'IsLiteral' | 'IsElement' | 'IsKind' | 'LiteralType';
328
+ /**
329
+ * One atomic cognitive transition.
330
+ *
331
+ * A KML mutation becomes durable only via a Transaction, so a statement
332
+ * written on its own is still a one-clause transaction. `explicit_transaction`
333
+ * records which spelling the source used without changing that meaning.
334
+ */
335
+ export interface KmlStatement {
336
+ explicit_transaction: boolean;
337
+ clauses: MutationClause[];
338
+ }
339
+ export type MutationClause = {
340
+ CreateConcept: ConceptCreate;
341
+ } | {
342
+ UpsertConcept: ConceptUpsert;
343
+ } | {
344
+ EnsureProposition: EnsureProposition;
345
+ } | {
346
+ CreateEvidence: RecordCreate;
347
+ } | {
348
+ CreateAssertion: RecordCreate;
349
+ } | {
350
+ CreateActivity: RecordCreate;
351
+ } | {
352
+ Update: UpdateStatement;
353
+ } | {
354
+ RetractAssertion: RetractAssertion;
355
+ } | {
356
+ SupersedeAssertion: SupersedeAssertion;
357
+ } | {
358
+ CorrectEvidence: CorrectEvidence;
359
+ } | {
360
+ TransitionActivity: TransitionActivity;
361
+ } | {
362
+ SetRetention: SetRetention;
363
+ } | {
364
+ Archive: RemovalStatement;
365
+ } | {
366
+ Tombstone: RemovalStatement;
367
+ } | {
368
+ Purge: PurgeStatement;
369
+ } | {
370
+ MergeConcept: MergeConcept;
371
+ };
372
+ export interface ConceptCreate {
373
+ handle: string;
374
+ type: SymbolRef | null;
375
+ client_key: Scalar | null;
376
+ name: Scalar | null;
377
+ set_fields: Assignments | null;
378
+ set_attributes: Assignments | null;
379
+ set_facets: FacetAssignment[];
380
+ set_structural: StructuralEdge[] | null;
381
+ }
382
+ export interface ConceptUpsert {
383
+ handle: string;
384
+ match: ObjectMatcher | null;
385
+ expect_version: Scalar | null;
386
+ set_fields: Assignments | null;
387
+ set_attributes: Assignments | null;
388
+ set_facets: FacetAssignment[];
389
+ unset_attributes: string[] | null;
390
+ unset_facets: FacetUnset[];
391
+ set_structural: StructuralEdge[] | null;
392
+ unset_structural: StructuralRemoval[] | null;
393
+ }
394
+ /** CREATE EVIDENCE / ASSERTION / ACTIVITY share one shape. */
395
+ export interface RecordCreate {
396
+ handle: string;
397
+ client_key: Scalar | null;
398
+ set_fields: Assignments | null;
399
+ set_facets: FacetAssignment[];
400
+ set_structural: StructuralEdge[] | null;
401
+ }
402
+ export interface EnsureProposition {
403
+ handle: string | null;
404
+ subject: Term;
405
+ predicate: PredAtom;
406
+ object: Term;
407
+ expect_version: Scalar | null;
408
+ }
409
+ export interface FacetAssignment {
410
+ facet: SymbolRef;
411
+ values: Assignments;
412
+ }
413
+ export interface FacetUnset {
414
+ facet: SymbolRef;
415
+ fields: string[];
416
+ }
417
+ export interface StructuralEdge {
418
+ field: SymbolRef;
419
+ value: MutationValue;
420
+ /** Edge options; `index` is meaningful only on an ordered field. */
421
+ options: Record<string, BoundValue> | null;
422
+ }
423
+ /**
424
+ * `UNSET STRUCTURAL { (field, target) }` — one reference to remove.
425
+ *
426
+ * The SET STRUCTURAL edge without options: removal is per reference, ordered
427
+ * fields re-densify, cardinality is validated at commit (Spec §17.5).
428
+ */
429
+ export interface StructuralRemoval {
430
+ field: SymbolRef;
431
+ value: MutationValue;
432
+ }
433
+ /** Assignment pairs, kept ordered so lowering stays deterministic. */
434
+ export type Assignments = [string, MutationValue][];
435
+ /**
436
+ * A KML right-hand side: a bound value, or arithmetic over the target's *own*
437
+ * fields. References to any other variable are rejected during lowering, which
438
+ * is what lets each matched element be updated from its own row without a join.
439
+ */
440
+ export type MutationValue = BoundValue | {
441
+ Expr: UpdateExpr;
442
+ };
443
+ export type UpdateExpr = {
444
+ Variable: DotPathVar;
445
+ } | {
446
+ Number: number;
447
+ } | {
448
+ Param: string;
449
+ } | {
450
+ Function: {
451
+ func: UpdateFunction;
452
+ args: UpdateExpr[];
453
+ };
454
+ };
455
+ export type UpdateFunction = 'Add' | 'Mul' | 'Clamp' | 'Coalesce';
456
+ export interface UpdateStatement {
457
+ target: ElementRef;
458
+ expect_version: Scalar | null;
459
+ actions: UpdateAction[];
460
+ /**
461
+ * `null` when the statement names its target directly and omits WHERE —
462
+ * the same shape as the removal family (Spec §58).
463
+ */
464
+ where_clauses: WhereClause[] | null;
465
+ limit: Scalar | null;
466
+ }
467
+ export type UpdateAction = {
468
+ SetFields: Assignments;
469
+ } | {
470
+ SetAttributes: Assignments;
471
+ } | {
472
+ SetFacet: FacetAssignment;
473
+ } | {
474
+ UnsetAttributes: string[];
475
+ } | {
476
+ UnsetFacet: FacetUnset;
477
+ } | {
478
+ SetStructural: StructuralEdge[];
479
+ } | {
480
+ UnsetStructural: StructuralRemoval[];
481
+ };
482
+ export interface RetractAssertion {
483
+ target: ElementRef;
484
+ where_clauses: WhereClause[] | null;
485
+ limit: Scalar | null;
486
+ expect_state: Scalar | null;
487
+ }
488
+ export interface SupersedeAssertion {
489
+ target: ElementRef;
490
+ by: ElementRef;
491
+ expect_state: Scalar | null;
492
+ }
493
+ export interface CorrectEvidence {
494
+ target: ElementRef;
495
+ by: ElementRef;
496
+ expect_state: Scalar | null;
497
+ }
498
+ export interface TransitionActivity {
499
+ target: ElementRef;
500
+ to: Scalar;
501
+ set_fields: Assignments | null;
502
+ set_structural: StructuralEdge[] | null;
503
+ expect_state: Scalar | null;
504
+ }
505
+ export interface SetRetention {
506
+ target: ElementRef;
507
+ values: Assignments;
508
+ where_clauses: WhereClause[] | null;
509
+ limit: Scalar | null;
510
+ expect_version: Scalar | null;
511
+ }
512
+ export interface RemovalStatement {
513
+ target: ElementRef;
514
+ where_clauses: WhereClause[] | null;
515
+ limit: Scalar | null;
516
+ expect_state: Scalar | null;
517
+ }
518
+ export interface PurgeStatement {
519
+ target: ElementRef;
520
+ where_clauses: WhereClause[] | null;
521
+ limit: Scalar | null;
522
+ reference_policy: Scalar | null;
523
+ /** Always the literal `PURGE`; the grammar freezes the spelling. */
524
+ confirm: string;
525
+ }
526
+ export interface MergeConcept {
527
+ source: ElementRef;
528
+ into: ElementRef;
529
+ where_clauses: WhereClause[] | null;
530
+ expect_version: Scalar | null;
531
+ }
532
+ export type MetaCommand = {
533
+ Describe: DescribeTarget;
534
+ } | {
535
+ List: ListCommand;
536
+ } | {
537
+ Search: SearchCommand;
538
+ } | {
539
+ Verify: {
540
+ target: VerifyTarget;
541
+ value: Scalar;
542
+ };
543
+ } | {
544
+ Validate: ValidateCommand;
545
+ } | {
546
+ Preview: PreviewCommand;
547
+ } | {
548
+ History: HistoryCommand;
549
+ } | {
550
+ Changes: ChangesCommand;
551
+ } | {
552
+ Snapshot: {
553
+ as_of: AsOf | null;
554
+ };
555
+ } | {
556
+ ExportCapsule: ExportCapsuleCommand;
557
+ };
558
+ export type DescribeTarget = {
559
+ Primer: {
560
+ mode: Scalar | null;
561
+ };
562
+ } | 'Protocol' | 'ExecutionContext' | 'Capabilities' | {
563
+ Space: {
564
+ value: Scalar | null;
565
+ };
566
+ } | {
567
+ SchemaEnvironment: {
568
+ as_of: AsOf | null;
569
+ };
570
+ } | {
571
+ Package: Scalar;
572
+ } | {
573
+ Type: Scalar;
574
+ } | {
575
+ Predicate: Scalar;
576
+ } | {
577
+ Facet: Scalar;
578
+ } | {
579
+ StructuralField: Scalar;
580
+ } | {
581
+ Compatibility: {
582
+ from: Scalar;
583
+ to: Scalar;
584
+ };
585
+ } | {
586
+ Error: Scalar;
587
+ } | {
588
+ Transaction: Scalar;
589
+ } | {
590
+ TransactionByIdempotencyKey: Scalar;
591
+ } | {
592
+ Snapshot: {
593
+ as_of: AsOf | null;
594
+ };
595
+ } | {
596
+ Capsule: Scalar;
597
+ } | {
598
+ EpistemicPolicy: {
599
+ value: Scalar | null;
600
+ };
601
+ } | 'ProjectionCapability' | {
602
+ Trust: {
603
+ value: Scalar | null;
604
+ };
605
+ } | {
606
+ Access: {
607
+ with: Record<string, BoundValue> | null;
608
+ };
609
+ };
610
+ export interface ListCommand {
611
+ target: ListTarget;
612
+ /** `LIST SCHEMA PACKAGES STATUS ...` only. */
613
+ status: Scalar | null;
614
+ limit: Scalar | null;
615
+ cursor: Scalar | null;
616
+ }
617
+ export type ListTarget = 'Spaces' | 'SchemaPackages' | 'Types' | 'Predicates' | 'Facets' | 'StructuralFields' | 'EpistemicPolicies';
618
+ export interface SearchCommand {
619
+ target: SearchTarget;
620
+ term: Scalar;
621
+ with_type: Scalar | null;
622
+ with_predicate: Scalar | null;
623
+ mode: Scalar | null;
624
+ threshold: Scalar | null;
625
+ /** Historical index basis, `AS OF SEQ`. */
626
+ as_of_seq: Scalar | null;
627
+ limit: Scalar | null;
628
+ cursor: Scalar | null;
629
+ }
630
+ export type SearchTarget = 'Concept' | 'Proposition' | 'Assertion' | 'Evidence' | 'Activity' | 'Cognition';
631
+ export type VerifyTarget = 'Capsule' | 'SchemaPackage' | 'Receipt' | 'Blob' | 'Checkpoint';
632
+ export interface ValidateCommand {
633
+ target: ValidateTarget;
634
+ value: Scalar;
635
+ options: Record<string, BoundValue> | null;
636
+ }
637
+ export type ValidateTarget = 'Kql' | 'Kml' | 'Capsule' | 'SchemaPackage' | 'ImportPlan';
638
+ export type PreviewCommand = {
639
+ Kml: Scalar;
640
+ } | {
641
+ ImportCapsule: {
642
+ capsule: Scalar;
643
+ into: Scalar;
644
+ };
645
+ };
646
+ export type HistoryCommand = {
647
+ Element: {
648
+ value: Scalar;
649
+ from_seq: Scalar | null;
650
+ to_seq: Scalar | null;
651
+ limit: Scalar | null;
652
+ cursor: Scalar | null;
653
+ };
654
+ } | {
655
+ Space: {
656
+ from_seq: Scalar | null;
657
+ to_seq: Scalar | null;
658
+ limit: Scalar | null;
659
+ cursor: Scalar | null;
660
+ };
661
+ };
662
+ export type ChangesCommand = {
663
+ Since: {
664
+ cursor: Scalar;
665
+ limit: Scalar | null;
666
+ };
667
+ } | {
668
+ AfterSeq: {
669
+ seq: Scalar;
670
+ limit: Scalar | null;
671
+ };
672
+ };
673
+ export interface ExportCapsuleCommand {
674
+ target: ElementRef;
675
+ where_clauses: WhereClause[];
676
+ options: Record<string, BoundValue> | null;
677
+ as_of: AsOf | null;
678
+ }
679
+ //# sourceMappingURL=exec-ast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec-ast.d.ts","sourceRoot":"","sources":["../src/exec-ast.ts"],"names":[],"mappings":"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"}