@hyperscale0/udl 1.0.0-alpha.1

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 (97) hide show
  1. package/AUTHORS +8 -0
  2. package/CHANGELOG.md +36 -0
  3. package/LICENSE +661 -0
  4. package/LICENSING.md +51 -0
  5. package/README.md +163 -0
  6. package/SECURITY.md +42 -0
  7. package/TRADEMARKS.md +35 -0
  8. package/conformance/README.md +79 -0
  9. package/conformance/invalid/blank-title.expected.json +10 -0
  10. package/conformance/invalid/blank-title.udl +50 -0
  11. package/conformance/invalid/depth-budget.expected.json +10 -0
  12. package/conformance/invalid/depth-budget.udl +49 -0
  13. package/conformance/invalid/format-version.expected.json +10 -0
  14. package/conformance/invalid/format-version.udl +50 -0
  15. package/conformance/invalid/invalid-utf8.expected.json +10 -0
  16. package/conformance/invalid/invalid-utf8.udl +1 -0
  17. package/conformance/invalid/malformed-json.expected.json +10 -0
  18. package/conformance/invalid/malformed-json.udl +1 -0
  19. package/conformance/invalid/missing-create-verb.expected.json +10 -0
  20. package/conformance/invalid/missing-create-verb.udl +45 -0
  21. package/conformance/invalid/not-an-object.expected.json +10 -0
  22. package/conformance/invalid/not-an-object.udl +1 -0
  23. package/conformance/invalid/noun-id-not-snake-case.expected.json +10 -0
  24. package/conformance/invalid/noun-id-not-snake-case.udl +50 -0
  25. package/conformance/invalid/unknown-key.expected.json +10 -0
  26. package/conformance/invalid/unknown-key.udl +51 -0
  27. package/conformance/invalid/unreachable-state.expected.json +10 -0
  28. package/conformance/invalid/unreachable-state.udl +51 -0
  29. package/conformance/invalid/verb-without-transition.expected.json +10 -0
  30. package/conformance/invalid/verb-without-transition.udl +55 -0
  31. package/conformance/valid/cards.expected.json +5 -0
  32. package/conformance/valid/cards.udl +1092 -0
  33. package/conformance/valid/commerce-escrow.expected.json +5 -0
  34. package/conformance/valid/commerce-escrow.udl +1011 -0
  35. package/conformance/valid/hand-edited.expected.json +5 -0
  36. package/conformance/valid/hand-edited.udl +1 -0
  37. package/conformance/valid/insured-car-marketplace.expected.json +5 -0
  38. package/conformance/valid/insured-car-marketplace.udl +831 -0
  39. package/conformance/valid/insured-travel.expected.json +5 -0
  40. package/conformance/valid/insured-travel.udl +2621 -0
  41. package/conformance/valid/minimal.expected.json +5 -0
  42. package/conformance/valid/minimal.udl +50 -0
  43. package/conformance/valid/protection.expected.json +5 -0
  44. package/conformance/valid/protection.udl +1136 -0
  45. package/dist/canonical.d.ts +2 -0
  46. package/dist/canonical.d.ts.map +1 -0
  47. package/dist/canonical.js +35 -0
  48. package/dist/canonical.js.map +1 -0
  49. package/dist/cli.d.ts +3 -0
  50. package/dist/cli.d.ts.map +1 -0
  51. package/dist/cli.js +138 -0
  52. package/dist/cli.js.map +1 -0
  53. package/dist/duration.d.ts +3 -0
  54. package/dist/duration.d.ts.map +1 -0
  55. package/dist/duration.js +23 -0
  56. package/dist/duration.js.map +1 -0
  57. package/dist/evolution.d.ts +63 -0
  58. package/dist/evolution.d.ts.map +1 -0
  59. package/dist/evolution.js +345 -0
  60. package/dist/evolution.js.map +1 -0
  61. package/dist/finance.d.ts +53 -0
  62. package/dist/finance.d.ts.map +1 -0
  63. package/dist/finance.js +511 -0
  64. package/dist/finance.js.map +1 -0
  65. package/dist/index.d.ts +11 -0
  66. package/dist/index.d.ts.map +1 -0
  67. package/dist/index.js +8 -0
  68. package/dist/index.js.map +1 -0
  69. package/dist/limits.d.ts +33 -0
  70. package/dist/limits.d.ts.map +1 -0
  71. package/dist/limits.js +33 -0
  72. package/dist/limits.js.map +1 -0
  73. package/dist/parser.d.ts +4 -0
  74. package/dist/parser.d.ts.map +1 -0
  75. package/dist/parser.js +54 -0
  76. package/dist/parser.js.map +1 -0
  77. package/dist/schema.d.ts +757 -0
  78. package/dist/schema.d.ts.map +1 -0
  79. package/dist/schema.js +281 -0
  80. package/dist/schema.js.map +1 -0
  81. package/dist/validation.d.ts +64 -0
  82. package/dist/validation.d.ts.map +1 -0
  83. package/dist/validation.js +1323 -0
  84. package/dist/validation.js.map +1 -0
  85. package/package.json +84 -0
  86. package/spec/README.md +137 -0
  87. package/spec/udl.schema.json +1019 -0
  88. package/src/canonical.ts +41 -0
  89. package/src/cli.ts +148 -0
  90. package/src/duration.ts +26 -0
  91. package/src/evolution.ts +587 -0
  92. package/src/finance.ts +775 -0
  93. package/src/index.ts +59 -0
  94. package/src/limits.ts +32 -0
  95. package/src/parser.ts +61 -0
  96. package/src/schema.ts +339 -0
  97. package/src/validation.ts +2053 -0
@@ -0,0 +1,757 @@
1
+ import { z } from "zod";
2
+ export declare const UDL_FORMAT_VERSION: 1;
3
+ declare const udlDeclaredValuePolicySchema: z.ZodEnum<{
4
+ optional: "optional";
5
+ required: "required";
6
+ none: "none";
7
+ }>;
8
+ declare const udlSubjectSchema: z.ZodObject<{
9
+ declaredValue: z.ZodEnum<{
10
+ optional: "optional";
11
+ required: "required";
12
+ none: "none";
13
+ }>;
14
+ kind: z.ZodString;
15
+ schema: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
16
+ title: z.ZodString;
17
+ version: z.ZodNumber;
18
+ }, z.core.$strict>;
19
+ declare const udlNounSubjectSchema: z.ZodObject<{
20
+ kinds: z.ZodArray<z.ZodString>;
21
+ }, z.core.$strict>;
22
+ declare const udlLifecycleTransitionSchema: z.ZodObject<{
23
+ from: z.ZodArray<z.ZodString>;
24
+ to: z.ZodString;
25
+ }, z.core.$strict>;
26
+ declare const udlLifecycleSchema: z.ZodObject<{
27
+ initial: z.ZodString;
28
+ states: z.ZodArray<z.ZodString>;
29
+ transitions: z.ZodRecord<z.ZodString, z.ZodObject<{
30
+ from: z.ZodArray<z.ZodString>;
31
+ to: z.ZodString;
32
+ }, z.core.$strict>>;
33
+ }, z.core.$strict>;
34
+ declare const udlGateSchema: z.ZodObject<{
35
+ bind: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
36
+ field: z.ZodString;
37
+ match: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
38
+ optional: z.ZodOptional<z.ZodLiteral<true>>;
39
+ statuses: z.ZodArray<z.ZodString>;
40
+ unique: z.ZodOptional<z.ZodLiteral<true>>;
41
+ }, z.core.$strict>;
42
+ declare const udlBindingSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
43
+ from: z.ZodLiteral<"const">;
44
+ value: z.ZodString;
45
+ }, z.core.$strict>, z.ZodObject<{
46
+ from: z.ZodLiteral<"instance">;
47
+ path: z.ZodString;
48
+ }, z.core.$strict>, z.ZodObject<{
49
+ from: z.ZodLiteral<"input">;
50
+ path: z.ZodString;
51
+ }, z.core.$strict>], "from">;
52
+ export declare const udlKernelOperationSchema: z.ZodEnum<{
53
+ "account.escrow.provision": "account.escrow.provision";
54
+ "account.freeze": "account.freeze";
55
+ "account.unfreeze": "account.unfreeze";
56
+ "internal_transfer.create": "internal_transfer.create";
57
+ "internal_transfer.reserve": "internal_transfer.reserve";
58
+ "internal_transfer.post": "internal_transfer.post";
59
+ "internal_transfer.void": "internal_transfer.void";
60
+ }>;
61
+ declare const udlStepSchema: z.ZodObject<{
62
+ bind: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
63
+ from: z.ZodLiteral<"const">;
64
+ value: z.ZodString;
65
+ }, z.core.$strict>, z.ZodObject<{
66
+ from: z.ZodLiteral<"instance">;
67
+ path: z.ZodString;
68
+ }, z.core.$strict>, z.ZodObject<{
69
+ from: z.ZodLiteral<"input">;
70
+ path: z.ZodString;
71
+ }, z.core.$strict>], "from">>;
72
+ capture: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
73
+ operation: z.ZodEnum<{
74
+ "account.escrow.provision": "account.escrow.provision";
75
+ "account.freeze": "account.freeze";
76
+ "account.unfreeze": "account.unfreeze";
77
+ }>;
78
+ }, z.core.$strict>;
79
+ declare const udlMoveSchema: z.ZodObject<{
80
+ bind: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
81
+ from: z.ZodLiteral<"const">;
82
+ value: z.ZodString;
83
+ }, z.core.$strict>, z.ZodObject<{
84
+ from: z.ZodLiteral<"instance">;
85
+ path: z.ZodString;
86
+ }, z.core.$strict>, z.ZodObject<{
87
+ from: z.ZodLiteral<"input">;
88
+ path: z.ZodString;
89
+ }, z.core.$strict>], "from">>;
90
+ capture: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
91
+ key: z.ZodString;
92
+ operation: z.ZodEnum<{
93
+ "internal_transfer.create": "internal_transfer.create";
94
+ "internal_transfer.reserve": "internal_transfer.reserve";
95
+ "internal_transfer.post": "internal_transfer.post";
96
+ "internal_transfer.void": "internal_transfer.void";
97
+ }>;
98
+ }, z.core.$strict>;
99
+ declare const udlDueSchema: z.ZodObject<{
100
+ every: z.ZodOptional<z.ZodObject<{
101
+ countField: z.ZodOptional<z.ZodString>;
102
+ period: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
103
+ calendar: z.ZodEnum<{
104
+ gregorian: "gregorian";
105
+ hijri: "hijri";
106
+ }>;
107
+ months: z.ZodNumber;
108
+ }, z.core.$strict>]>;
109
+ untilField: z.ZodOptional<z.ZodString>;
110
+ }, z.core.$strict>>;
111
+ field: z.ZodString;
112
+ offset: z.ZodOptional<z.ZodString>;
113
+ whenParentStatus: z.ZodOptional<z.ZodObject<{
114
+ nounId: z.ZodString;
115
+ refField: z.ZodString;
116
+ statuses: z.ZodArray<z.ZodString>;
117
+ }, z.core.$strict>>;
118
+ }, z.core.$strict>;
119
+ declare const udlUnwindSchema: z.ZodObject<{
120
+ beforeField: z.ZodOptional<z.ZodString>;
121
+ confirm: z.ZodString;
122
+ penalty: z.ZodArray<z.ZodObject<{
123
+ bps: z.ZodNumber;
124
+ withinOffset: z.ZodOptional<z.ZodString>;
125
+ }, z.core.$strict>>;
126
+ quote: z.ZodString;
127
+ refundableField: z.ZodString;
128
+ refundDestinationField: z.ZodString;
129
+ }, z.core.$strict>;
130
+ declare const udlDecisionSchema: z.ZodObject<{
131
+ capability: z.ZodString;
132
+ deadlineMs: z.ZodNumber;
133
+ onTimeout: z.ZodLiteral<"decline">;
134
+ }, z.core.$strict>;
135
+ declare const udlExampleSchema: z.ZodObject<{
136
+ input: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
137
+ name: z.ZodString;
138
+ output: z.ZodOptional<z.ZodJSONSchema>;
139
+ }, z.core.$strict>;
140
+ declare const udlAggregateConditionSchema: z.ZodObject<{
141
+ check: z.ZodDiscriminatedUnion<[z.ZodObject<{
142
+ amountField: z.ZodString;
143
+ kind: z.ZodLiteral<"sum_at_least">;
144
+ targetField: z.ZodString;
145
+ }, z.core.$strict>, z.ZodObject<{
146
+ amountField: z.ZodString;
147
+ kind: z.ZodLiteral<"sum_below">;
148
+ targetField: z.ZodString;
149
+ }, z.core.$strict>, z.ZodObject<{
150
+ amountField: z.ZodString;
151
+ kind: z.ZodLiteral<"sum_exactly">;
152
+ targetField: z.ZodString;
153
+ }, z.core.$strict>, z.ZodObject<{
154
+ amountField: z.ZodString;
155
+ anchorRef: z.ZodString;
156
+ kind: z.ZodLiteral<"sum_within_anchor_ref">;
157
+ }, z.core.$strict>, z.ZodObject<{
158
+ kind: z.ZodLiteral<"count_at_least">;
159
+ targetField: z.ZodString;
160
+ }, z.core.$strict>, z.ZodObject<{
161
+ kind: z.ZodLiteral<"all_in">;
162
+ }, z.core.$strict>, z.ZodObject<{
163
+ field: z.ZodString;
164
+ kind: z.ZodLiteral<"count_equals_field">;
165
+ }, z.core.$strict>], "kind">;
166
+ nounId: z.ZodOptional<z.ZodString>;
167
+ over: z.ZodEnum<{
168
+ children: "children";
169
+ siblings: "siblings";
170
+ }>;
171
+ refField: z.ZodString;
172
+ statuses: z.ZodArray<z.ZodString>;
173
+ }, z.core.$strict>;
174
+ declare const udlVerbSchema: z.ZodObject<{
175
+ deadline: z.ZodOptional<z.ZodObject<{
176
+ field: z.ZodString;
177
+ offset: z.ZodOptional<z.ZodString>;
178
+ }, z.core.$strict>>;
179
+ decision: z.ZodOptional<z.ZodObject<{
180
+ capability: z.ZodString;
181
+ deadlineMs: z.ZodNumber;
182
+ onTimeout: z.ZodLiteral<"decline">;
183
+ }, z.core.$strict>>;
184
+ description: z.ZodOptional<z.ZodString>;
185
+ due: z.ZodOptional<z.ZodObject<{
186
+ every: z.ZodOptional<z.ZodObject<{
187
+ countField: z.ZodOptional<z.ZodString>;
188
+ period: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
189
+ calendar: z.ZodEnum<{
190
+ gregorian: "gregorian";
191
+ hijri: "hijri";
192
+ }>;
193
+ months: z.ZodNumber;
194
+ }, z.core.$strict>]>;
195
+ untilField: z.ZodOptional<z.ZodString>;
196
+ }, z.core.$strict>>;
197
+ field: z.ZodString;
198
+ offset: z.ZodOptional<z.ZodString>;
199
+ whenParentStatus: z.ZodOptional<z.ZodObject<{
200
+ nounId: z.ZodString;
201
+ refField: z.ZodString;
202
+ statuses: z.ZodArray<z.ZodString>;
203
+ }, z.core.$strict>>;
204
+ }, z.core.$strict>>;
205
+ earnable: z.ZodOptional<z.ZodBoolean>;
206
+ eventName: z.ZodOptional<z.ZodString>;
207
+ examples: z.ZodOptional<z.ZodArray<z.ZodObject<{
208
+ input: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
209
+ name: z.ZodString;
210
+ output: z.ZodOptional<z.ZodJSONSchema>;
211
+ }, z.core.$strict>>>;
212
+ input: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
213
+ moves: z.ZodDefault<z.ZodArray<z.ZodObject<{
214
+ bind: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
215
+ from: z.ZodLiteral<"const">;
216
+ value: z.ZodString;
217
+ }, z.core.$strict>, z.ZodObject<{
218
+ from: z.ZodLiteral<"instance">;
219
+ path: z.ZodString;
220
+ }, z.core.$strict>, z.ZodObject<{
221
+ from: z.ZodLiteral<"input">;
222
+ path: z.ZodString;
223
+ }, z.core.$strict>], "from">>;
224
+ capture: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
225
+ key: z.ZodString;
226
+ operation: z.ZodEnum<{
227
+ "internal_transfer.create": "internal_transfer.create";
228
+ "internal_transfer.reserve": "internal_transfer.reserve";
229
+ "internal_transfer.post": "internal_transfer.post";
230
+ "internal_transfer.void": "internal_transfer.void";
231
+ }>;
232
+ }, z.core.$strict>>>;
233
+ port: z.ZodOptional<z.ZodObject<{
234
+ allowedParties: z.ZodArray<z.ZodEnum<{
235
+ payer: "payer";
236
+ beneficiary: "beneficiary";
237
+ subjectHolder: "subjectHolder";
238
+ }>>;
239
+ }, z.core.$strict>>;
240
+ requiresAggregate: z.ZodOptional<z.ZodArray<z.ZodObject<{
241
+ check: z.ZodDiscriminatedUnion<[z.ZodObject<{
242
+ amountField: z.ZodString;
243
+ kind: z.ZodLiteral<"sum_at_least">;
244
+ targetField: z.ZodString;
245
+ }, z.core.$strict>, z.ZodObject<{
246
+ amountField: z.ZodString;
247
+ kind: z.ZodLiteral<"sum_below">;
248
+ targetField: z.ZodString;
249
+ }, z.core.$strict>, z.ZodObject<{
250
+ amountField: z.ZodString;
251
+ kind: z.ZodLiteral<"sum_exactly">;
252
+ targetField: z.ZodString;
253
+ }, z.core.$strict>, z.ZodObject<{
254
+ amountField: z.ZodString;
255
+ anchorRef: z.ZodString;
256
+ kind: z.ZodLiteral<"sum_within_anchor_ref">;
257
+ }, z.core.$strict>, z.ZodObject<{
258
+ kind: z.ZodLiteral<"count_at_least">;
259
+ targetField: z.ZodString;
260
+ }, z.core.$strict>, z.ZodObject<{
261
+ kind: z.ZodLiteral<"all_in">;
262
+ }, z.core.$strict>, z.ZodObject<{
263
+ field: z.ZodString;
264
+ kind: z.ZodLiteral<"count_equals_field">;
265
+ }, z.core.$strict>], "kind">;
266
+ nounId: z.ZodOptional<z.ZodString>;
267
+ over: z.ZodEnum<{
268
+ children: "children";
269
+ siblings: "siblings";
270
+ }>;
271
+ refField: z.ZodString;
272
+ statuses: z.ZodArray<z.ZodString>;
273
+ }, z.core.$strict>>>;
274
+ requiresDrainedAccount: z.ZodOptional<z.ZodObject<{
275
+ path: z.ZodString;
276
+ }, z.core.$strict>>;
277
+ requiresRefs: z.ZodOptional<z.ZodArray<z.ZodObject<{
278
+ bind: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
279
+ field: z.ZodString;
280
+ match: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
281
+ optional: z.ZodOptional<z.ZodLiteral<true>>;
282
+ statuses: z.ZodArray<z.ZodString>;
283
+ unique: z.ZodOptional<z.ZodLiteral<true>>;
284
+ }, z.core.$strict>>>;
285
+ setsAt: z.ZodOptional<z.ZodObject<{
286
+ field: z.ZodString;
287
+ offset: z.ZodString;
288
+ }, z.core.$strict>>;
289
+ steps: z.ZodArray<z.ZodObject<{
290
+ bind: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
291
+ from: z.ZodLiteral<"const">;
292
+ value: z.ZodString;
293
+ }, z.core.$strict>, z.ZodObject<{
294
+ from: z.ZodLiteral<"instance">;
295
+ path: z.ZodString;
296
+ }, z.core.$strict>, z.ZodObject<{
297
+ from: z.ZodLiteral<"input">;
298
+ path: z.ZodString;
299
+ }, z.core.$strict>], "from">>;
300
+ capture: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
301
+ operation: z.ZodEnum<{
302
+ "account.escrow.provision": "account.escrow.provision";
303
+ "account.freeze": "account.freeze";
304
+ "account.unfreeze": "account.unfreeze";
305
+ }>;
306
+ }, z.core.$strict>>;
307
+ summary: z.ZodString;
308
+ }, z.core.$strict>;
309
+ declare const udlAggregateSchema: z.ZodUnion<readonly [z.ZodObject<{
310
+ childField: z.ZodString;
311
+ childNounId: z.ZodString;
312
+ childRefField: z.ZodString;
313
+ childStatuses: z.ZodArray<z.ZodString>;
314
+ parentField: z.ZodString;
315
+ }, z.core.$strict>, z.ZodObject<{
316
+ count: z.ZodLiteral<true>;
317
+ window: z.ZodOptional<z.ZodObject<{
318
+ field: z.ZodString;
319
+ days: z.ZodNumber;
320
+ }, z.core.$strict>>;
321
+ childNounId: z.ZodString;
322
+ childRefField: z.ZodString;
323
+ childStatuses: z.ZodArray<z.ZodString>;
324
+ parentField: z.ZodString;
325
+ }, z.core.$strict>]>;
326
+ declare const udlNounSchema: z.ZodObject<{
327
+ aggregateInvariants: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
328
+ childField: z.ZodString;
329
+ childNounId: z.ZodString;
330
+ childRefField: z.ZodString;
331
+ childStatuses: z.ZodArray<z.ZodString>;
332
+ parentField: z.ZodString;
333
+ }, z.core.$strict>, z.ZodObject<{
334
+ count: z.ZodLiteral<true>;
335
+ window: z.ZodOptional<z.ZodObject<{
336
+ field: z.ZodString;
337
+ days: z.ZodNumber;
338
+ }, z.core.$strict>>;
339
+ childNounId: z.ZodString;
340
+ childRefField: z.ZodString;
341
+ childStatuses: z.ZodArray<z.ZodString>;
342
+ parentField: z.ZodString;
343
+ }, z.core.$strict>]>>>;
344
+ description: z.ZodOptional<z.ZodString>;
345
+ distinctParties: z.ZodOptional<z.ZodLiteral<true>>;
346
+ fields: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
347
+ id: z.ZodString;
348
+ idPrefix: z.ZodString;
349
+ lifecycle: z.ZodObject<{
350
+ initial: z.ZodString;
351
+ states: z.ZodArray<z.ZodString>;
352
+ transitions: z.ZodRecord<z.ZodString, z.ZodObject<{
353
+ from: z.ZodArray<z.ZodString>;
354
+ to: z.ZodString;
355
+ }, z.core.$strict>>;
356
+ }, z.core.$strict>;
357
+ parties: z.ZodOptional<z.ZodObject<{
358
+ beneficiary: z.ZodOptional<z.ZodString>;
359
+ payer: z.ZodOptional<z.ZodString>;
360
+ subjectHolder: z.ZodOptional<z.ZodString>;
361
+ }, z.core.$strict>>;
362
+ partitions: z.ZodOptional<z.ZodArray<z.ZodObject<{
363
+ pieceFields: z.ZodArray<z.ZodString>;
364
+ totalField: z.ZodString;
365
+ }, z.core.$strict>>>;
366
+ required: z.ZodArray<z.ZodString>;
367
+ subject: z.ZodOptional<z.ZodObject<{
368
+ kinds: z.ZodArray<z.ZodString>;
369
+ }, z.core.$strict>>;
370
+ summary: z.ZodString;
371
+ title: z.ZodString;
372
+ unwind: z.ZodOptional<z.ZodObject<{
373
+ beforeField: z.ZodOptional<z.ZodString>;
374
+ confirm: z.ZodString;
375
+ penalty: z.ZodArray<z.ZodObject<{
376
+ bps: z.ZodNumber;
377
+ withinOffset: z.ZodOptional<z.ZodString>;
378
+ }, z.core.$strict>>;
379
+ quote: z.ZodString;
380
+ refundableField: z.ZodString;
381
+ refundDestinationField: z.ZodString;
382
+ }, z.core.$strict>>;
383
+ update: z.ZodOptional<z.ZodObject<{
384
+ fields: z.ZodArray<z.ZodString>;
385
+ states: z.ZodArray<z.ZodString>;
386
+ }, z.core.$strict>>;
387
+ verbs: z.ZodRecord<z.ZodString, z.ZodObject<{
388
+ deadline: z.ZodOptional<z.ZodObject<{
389
+ field: z.ZodString;
390
+ offset: z.ZodOptional<z.ZodString>;
391
+ }, z.core.$strict>>;
392
+ decision: z.ZodOptional<z.ZodObject<{
393
+ capability: z.ZodString;
394
+ deadlineMs: z.ZodNumber;
395
+ onTimeout: z.ZodLiteral<"decline">;
396
+ }, z.core.$strict>>;
397
+ description: z.ZodOptional<z.ZodString>;
398
+ due: z.ZodOptional<z.ZodObject<{
399
+ every: z.ZodOptional<z.ZodObject<{
400
+ countField: z.ZodOptional<z.ZodString>;
401
+ period: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
402
+ calendar: z.ZodEnum<{
403
+ gregorian: "gregorian";
404
+ hijri: "hijri";
405
+ }>;
406
+ months: z.ZodNumber;
407
+ }, z.core.$strict>]>;
408
+ untilField: z.ZodOptional<z.ZodString>;
409
+ }, z.core.$strict>>;
410
+ field: z.ZodString;
411
+ offset: z.ZodOptional<z.ZodString>;
412
+ whenParentStatus: z.ZodOptional<z.ZodObject<{
413
+ nounId: z.ZodString;
414
+ refField: z.ZodString;
415
+ statuses: z.ZodArray<z.ZodString>;
416
+ }, z.core.$strict>>;
417
+ }, z.core.$strict>>;
418
+ earnable: z.ZodOptional<z.ZodBoolean>;
419
+ eventName: z.ZodOptional<z.ZodString>;
420
+ examples: z.ZodOptional<z.ZodArray<z.ZodObject<{
421
+ input: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
422
+ name: z.ZodString;
423
+ output: z.ZodOptional<z.ZodJSONSchema>;
424
+ }, z.core.$strict>>>;
425
+ input: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
426
+ moves: z.ZodDefault<z.ZodArray<z.ZodObject<{
427
+ bind: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
428
+ from: z.ZodLiteral<"const">;
429
+ value: z.ZodString;
430
+ }, z.core.$strict>, z.ZodObject<{
431
+ from: z.ZodLiteral<"instance">;
432
+ path: z.ZodString;
433
+ }, z.core.$strict>, z.ZodObject<{
434
+ from: z.ZodLiteral<"input">;
435
+ path: z.ZodString;
436
+ }, z.core.$strict>], "from">>;
437
+ capture: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
438
+ key: z.ZodString;
439
+ operation: z.ZodEnum<{
440
+ "internal_transfer.create": "internal_transfer.create";
441
+ "internal_transfer.reserve": "internal_transfer.reserve";
442
+ "internal_transfer.post": "internal_transfer.post";
443
+ "internal_transfer.void": "internal_transfer.void";
444
+ }>;
445
+ }, z.core.$strict>>>;
446
+ port: z.ZodOptional<z.ZodObject<{
447
+ allowedParties: z.ZodArray<z.ZodEnum<{
448
+ payer: "payer";
449
+ beneficiary: "beneficiary";
450
+ subjectHolder: "subjectHolder";
451
+ }>>;
452
+ }, z.core.$strict>>;
453
+ requiresAggregate: z.ZodOptional<z.ZodArray<z.ZodObject<{
454
+ check: z.ZodDiscriminatedUnion<[z.ZodObject<{
455
+ amountField: z.ZodString;
456
+ kind: z.ZodLiteral<"sum_at_least">;
457
+ targetField: z.ZodString;
458
+ }, z.core.$strict>, z.ZodObject<{
459
+ amountField: z.ZodString;
460
+ kind: z.ZodLiteral<"sum_below">;
461
+ targetField: z.ZodString;
462
+ }, z.core.$strict>, z.ZodObject<{
463
+ amountField: z.ZodString;
464
+ kind: z.ZodLiteral<"sum_exactly">;
465
+ targetField: z.ZodString;
466
+ }, z.core.$strict>, z.ZodObject<{
467
+ amountField: z.ZodString;
468
+ anchorRef: z.ZodString;
469
+ kind: z.ZodLiteral<"sum_within_anchor_ref">;
470
+ }, z.core.$strict>, z.ZodObject<{
471
+ kind: z.ZodLiteral<"count_at_least">;
472
+ targetField: z.ZodString;
473
+ }, z.core.$strict>, z.ZodObject<{
474
+ kind: z.ZodLiteral<"all_in">;
475
+ }, z.core.$strict>, z.ZodObject<{
476
+ field: z.ZodString;
477
+ kind: z.ZodLiteral<"count_equals_field">;
478
+ }, z.core.$strict>], "kind">;
479
+ nounId: z.ZodOptional<z.ZodString>;
480
+ over: z.ZodEnum<{
481
+ children: "children";
482
+ siblings: "siblings";
483
+ }>;
484
+ refField: z.ZodString;
485
+ statuses: z.ZodArray<z.ZodString>;
486
+ }, z.core.$strict>>>;
487
+ requiresDrainedAccount: z.ZodOptional<z.ZodObject<{
488
+ path: z.ZodString;
489
+ }, z.core.$strict>>;
490
+ requiresRefs: z.ZodOptional<z.ZodArray<z.ZodObject<{
491
+ bind: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
492
+ field: z.ZodString;
493
+ match: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
494
+ optional: z.ZodOptional<z.ZodLiteral<true>>;
495
+ statuses: z.ZodArray<z.ZodString>;
496
+ unique: z.ZodOptional<z.ZodLiteral<true>>;
497
+ }, z.core.$strict>>>;
498
+ setsAt: z.ZodOptional<z.ZodObject<{
499
+ field: z.ZodString;
500
+ offset: z.ZodString;
501
+ }, z.core.$strict>>;
502
+ steps: z.ZodArray<z.ZodObject<{
503
+ bind: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
504
+ from: z.ZodLiteral<"const">;
505
+ value: z.ZodString;
506
+ }, z.core.$strict>, z.ZodObject<{
507
+ from: z.ZodLiteral<"instance">;
508
+ path: z.ZodString;
509
+ }, z.core.$strict>, z.ZodObject<{
510
+ from: z.ZodLiteral<"input">;
511
+ path: z.ZodString;
512
+ }, z.core.$strict>], "from">>;
513
+ capture: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
514
+ operation: z.ZodEnum<{
515
+ "account.escrow.provision": "account.escrow.provision";
516
+ "account.freeze": "account.freeze";
517
+ "account.unfreeze": "account.unfreeze";
518
+ }>;
519
+ }, z.core.$strict>>;
520
+ summary: z.ZodString;
521
+ }, z.core.$strict>>;
522
+ }, z.core.$strict>;
523
+ export declare const udlDocumentSchema: z.ZodObject<{
524
+ nouns: z.ZodArray<z.ZodObject<{
525
+ aggregateInvariants: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
526
+ childField: z.ZodString;
527
+ childNounId: z.ZodString;
528
+ childRefField: z.ZodString;
529
+ childStatuses: z.ZodArray<z.ZodString>;
530
+ parentField: z.ZodString;
531
+ }, z.core.$strict>, z.ZodObject<{
532
+ count: z.ZodLiteral<true>;
533
+ window: z.ZodOptional<z.ZodObject<{
534
+ field: z.ZodString;
535
+ days: z.ZodNumber;
536
+ }, z.core.$strict>>;
537
+ childNounId: z.ZodString;
538
+ childRefField: z.ZodString;
539
+ childStatuses: z.ZodArray<z.ZodString>;
540
+ parentField: z.ZodString;
541
+ }, z.core.$strict>]>>>;
542
+ description: z.ZodOptional<z.ZodString>;
543
+ distinctParties: z.ZodOptional<z.ZodLiteral<true>>;
544
+ fields: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
545
+ id: z.ZodString;
546
+ idPrefix: z.ZodString;
547
+ lifecycle: z.ZodObject<{
548
+ initial: z.ZodString;
549
+ states: z.ZodArray<z.ZodString>;
550
+ transitions: z.ZodRecord<z.ZodString, z.ZodObject<{
551
+ from: z.ZodArray<z.ZodString>;
552
+ to: z.ZodString;
553
+ }, z.core.$strict>>;
554
+ }, z.core.$strict>;
555
+ parties: z.ZodOptional<z.ZodObject<{
556
+ beneficiary: z.ZodOptional<z.ZodString>;
557
+ payer: z.ZodOptional<z.ZodString>;
558
+ subjectHolder: z.ZodOptional<z.ZodString>;
559
+ }, z.core.$strict>>;
560
+ partitions: z.ZodOptional<z.ZodArray<z.ZodObject<{
561
+ pieceFields: z.ZodArray<z.ZodString>;
562
+ totalField: z.ZodString;
563
+ }, z.core.$strict>>>;
564
+ required: z.ZodArray<z.ZodString>;
565
+ subject: z.ZodOptional<z.ZodObject<{
566
+ kinds: z.ZodArray<z.ZodString>;
567
+ }, z.core.$strict>>;
568
+ summary: z.ZodString;
569
+ title: z.ZodString;
570
+ unwind: z.ZodOptional<z.ZodObject<{
571
+ beforeField: z.ZodOptional<z.ZodString>;
572
+ confirm: z.ZodString;
573
+ penalty: z.ZodArray<z.ZodObject<{
574
+ bps: z.ZodNumber;
575
+ withinOffset: z.ZodOptional<z.ZodString>;
576
+ }, z.core.$strict>>;
577
+ quote: z.ZodString;
578
+ refundableField: z.ZodString;
579
+ refundDestinationField: z.ZodString;
580
+ }, z.core.$strict>>;
581
+ update: z.ZodOptional<z.ZodObject<{
582
+ fields: z.ZodArray<z.ZodString>;
583
+ states: z.ZodArray<z.ZodString>;
584
+ }, z.core.$strict>>;
585
+ verbs: z.ZodRecord<z.ZodString, z.ZodObject<{
586
+ deadline: z.ZodOptional<z.ZodObject<{
587
+ field: z.ZodString;
588
+ offset: z.ZodOptional<z.ZodString>;
589
+ }, z.core.$strict>>;
590
+ decision: z.ZodOptional<z.ZodObject<{
591
+ capability: z.ZodString;
592
+ deadlineMs: z.ZodNumber;
593
+ onTimeout: z.ZodLiteral<"decline">;
594
+ }, z.core.$strict>>;
595
+ description: z.ZodOptional<z.ZodString>;
596
+ due: z.ZodOptional<z.ZodObject<{
597
+ every: z.ZodOptional<z.ZodObject<{
598
+ countField: z.ZodOptional<z.ZodString>;
599
+ period: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
600
+ calendar: z.ZodEnum<{
601
+ gregorian: "gregorian";
602
+ hijri: "hijri";
603
+ }>;
604
+ months: z.ZodNumber;
605
+ }, z.core.$strict>]>;
606
+ untilField: z.ZodOptional<z.ZodString>;
607
+ }, z.core.$strict>>;
608
+ field: z.ZodString;
609
+ offset: z.ZodOptional<z.ZodString>;
610
+ whenParentStatus: z.ZodOptional<z.ZodObject<{
611
+ nounId: z.ZodString;
612
+ refField: z.ZodString;
613
+ statuses: z.ZodArray<z.ZodString>;
614
+ }, z.core.$strict>>;
615
+ }, z.core.$strict>>;
616
+ earnable: z.ZodOptional<z.ZodBoolean>;
617
+ eventName: z.ZodOptional<z.ZodString>;
618
+ examples: z.ZodOptional<z.ZodArray<z.ZodObject<{
619
+ input: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
620
+ name: z.ZodString;
621
+ output: z.ZodOptional<z.ZodJSONSchema>;
622
+ }, z.core.$strict>>>;
623
+ input: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
624
+ moves: z.ZodDefault<z.ZodArray<z.ZodObject<{
625
+ bind: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
626
+ from: z.ZodLiteral<"const">;
627
+ value: z.ZodString;
628
+ }, z.core.$strict>, z.ZodObject<{
629
+ from: z.ZodLiteral<"instance">;
630
+ path: z.ZodString;
631
+ }, z.core.$strict>, z.ZodObject<{
632
+ from: z.ZodLiteral<"input">;
633
+ path: z.ZodString;
634
+ }, z.core.$strict>], "from">>;
635
+ capture: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
636
+ key: z.ZodString;
637
+ operation: z.ZodEnum<{
638
+ "internal_transfer.create": "internal_transfer.create";
639
+ "internal_transfer.reserve": "internal_transfer.reserve";
640
+ "internal_transfer.post": "internal_transfer.post";
641
+ "internal_transfer.void": "internal_transfer.void";
642
+ }>;
643
+ }, z.core.$strict>>>;
644
+ port: z.ZodOptional<z.ZodObject<{
645
+ allowedParties: z.ZodArray<z.ZodEnum<{
646
+ payer: "payer";
647
+ beneficiary: "beneficiary";
648
+ subjectHolder: "subjectHolder";
649
+ }>>;
650
+ }, z.core.$strict>>;
651
+ requiresAggregate: z.ZodOptional<z.ZodArray<z.ZodObject<{
652
+ check: z.ZodDiscriminatedUnion<[z.ZodObject<{
653
+ amountField: z.ZodString;
654
+ kind: z.ZodLiteral<"sum_at_least">;
655
+ targetField: z.ZodString;
656
+ }, z.core.$strict>, z.ZodObject<{
657
+ amountField: z.ZodString;
658
+ kind: z.ZodLiteral<"sum_below">;
659
+ targetField: z.ZodString;
660
+ }, z.core.$strict>, z.ZodObject<{
661
+ amountField: z.ZodString;
662
+ kind: z.ZodLiteral<"sum_exactly">;
663
+ targetField: z.ZodString;
664
+ }, z.core.$strict>, z.ZodObject<{
665
+ amountField: z.ZodString;
666
+ anchorRef: z.ZodString;
667
+ kind: z.ZodLiteral<"sum_within_anchor_ref">;
668
+ }, z.core.$strict>, z.ZodObject<{
669
+ kind: z.ZodLiteral<"count_at_least">;
670
+ targetField: z.ZodString;
671
+ }, z.core.$strict>, z.ZodObject<{
672
+ kind: z.ZodLiteral<"all_in">;
673
+ }, z.core.$strict>, z.ZodObject<{
674
+ field: z.ZodString;
675
+ kind: z.ZodLiteral<"count_equals_field">;
676
+ }, z.core.$strict>], "kind">;
677
+ nounId: z.ZodOptional<z.ZodString>;
678
+ over: z.ZodEnum<{
679
+ children: "children";
680
+ siblings: "siblings";
681
+ }>;
682
+ refField: z.ZodString;
683
+ statuses: z.ZodArray<z.ZodString>;
684
+ }, z.core.$strict>>>;
685
+ requiresDrainedAccount: z.ZodOptional<z.ZodObject<{
686
+ path: z.ZodString;
687
+ }, z.core.$strict>>;
688
+ requiresRefs: z.ZodOptional<z.ZodArray<z.ZodObject<{
689
+ bind: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
690
+ field: z.ZodString;
691
+ match: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
692
+ optional: z.ZodOptional<z.ZodLiteral<true>>;
693
+ statuses: z.ZodArray<z.ZodString>;
694
+ unique: z.ZodOptional<z.ZodLiteral<true>>;
695
+ }, z.core.$strict>>>;
696
+ setsAt: z.ZodOptional<z.ZodObject<{
697
+ field: z.ZodString;
698
+ offset: z.ZodString;
699
+ }, z.core.$strict>>;
700
+ steps: z.ZodArray<z.ZodObject<{
701
+ bind: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
702
+ from: z.ZodLiteral<"const">;
703
+ value: z.ZodString;
704
+ }, z.core.$strict>, z.ZodObject<{
705
+ from: z.ZodLiteral<"instance">;
706
+ path: z.ZodString;
707
+ }, z.core.$strict>, z.ZodObject<{
708
+ from: z.ZodLiteral<"input">;
709
+ path: z.ZodString;
710
+ }, z.core.$strict>], "from">>;
711
+ capture: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
712
+ operation: z.ZodEnum<{
713
+ "account.escrow.provision": "account.escrow.provision";
714
+ "account.freeze": "account.freeze";
715
+ "account.unfreeze": "account.unfreeze";
716
+ }>;
717
+ }, z.core.$strict>>;
718
+ summary: z.ZodString;
719
+ }, z.core.$strict>>;
720
+ }, z.core.$strict>>;
721
+ product: z.ZodString;
722
+ subjects: z.ZodArray<z.ZodObject<{
723
+ declaredValue: z.ZodEnum<{
724
+ optional: "optional";
725
+ required: "required";
726
+ none: "none";
727
+ }>;
728
+ kind: z.ZodString;
729
+ schema: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
730
+ title: z.ZodString;
731
+ version: z.ZodNumber;
732
+ }, z.core.$strict>>;
733
+ title: z.ZodString;
734
+ udl: z.ZodLiteral<1>;
735
+ version: z.ZodNumber;
736
+ }, z.core.$strict>;
737
+ export type UdlAggregate = z.infer<typeof udlAggregateSchema>;
738
+ export type UdlAggregateCondition = z.infer<typeof udlAggregateConditionSchema>;
739
+ export type UdlBinding = z.infer<typeof udlBindingSchema>;
740
+ export type UdlDeclaredValuePolicy = z.infer<typeof udlDeclaredValuePolicySchema>;
741
+ export type UdlDecision = z.infer<typeof udlDecisionSchema>;
742
+ export type UdlDocument = z.infer<typeof udlDocumentSchema>;
743
+ export type UdlDue = z.infer<typeof udlDueSchema>;
744
+ export type UdlExample = z.infer<typeof udlExampleSchema>;
745
+ export type UdlGate = z.infer<typeof udlGateSchema>;
746
+ export type UdlKernelOperation = z.infer<typeof udlKernelOperationSchema>;
747
+ export type UdlLifecycle = z.infer<typeof udlLifecycleSchema>;
748
+ export type UdlLifecycleTransition = z.infer<typeof udlLifecycleTransitionSchema>;
749
+ export type UdlNoun = z.infer<typeof udlNounSchema>;
750
+ export type UdlNounSubject = z.infer<typeof udlNounSubjectSchema>;
751
+ export type UdlMove = z.infer<typeof udlMoveSchema>;
752
+ export type UdlStep = z.infer<typeof udlStepSchema>;
753
+ export type UdlSubject = z.infer<typeof udlSubjectSchema>;
754
+ export type UdlUnwind = z.infer<typeof udlUnwindSchema>;
755
+ export type UdlVerb = z.infer<typeof udlVerbSchema>;
756
+ export {};
757
+ //# sourceMappingURL=schema.d.ts.map