@zenstackhq/language 3.8.0-beta.1 → 3.8.0-beta.3

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.
@@ -0,0 +1,1440 @@
1
+ import * as langium from "langium";
2
+ import { AstNode, AstNode as AstNode$1, Reference as Reference$1 } from "langium";
3
+
4
+ //#region src/generated/ast.d.ts
5
+ declare const ZModelTerminals: {
6
+ WS: RegExp;
7
+ INTERNAL_ATTRIBUTE_NAME: RegExp;
8
+ MODEL_ATTRIBUTE_NAME: RegExp;
9
+ FIELD_ATTRIBUTE_NAME: RegExp;
10
+ ID: RegExp;
11
+ STRING: RegExp;
12
+ NUMBER: RegExp;
13
+ TRIPLE_SLASH_COMMENT: RegExp;
14
+ ML_COMMENT: RegExp;
15
+ SL_COMMENT: RegExp;
16
+ };
17
+ type ZModelTerminalNames = keyof typeof ZModelTerminals;
18
+ type ZModelKeywordNames = "!" | "!=" | "&&" | "(" | ")" | "," | "." | ":" | ";" | "<" | "<=" | "=" | "==" | ">" | ">=" | "?" | "Any" | "BigInt" | "Boolean" | "Bytes" | "ContextType" | "DateTime" | "Decimal" | "FieldReference" | "Float" | "Int" | "Json" | "Null" | "Object" | "String" | "TransitiveFieldReference" | "Undefined" | "Unsupported" | "Void" | "[" | "]" | "^" | "_" | "abstract" | "attribute" | "datasource" | "enum" | "extends" | "false" | "function" | "generator" | "import" | "in" | "model" | "mutation" | "null" | "plugin" | "procedure" | "this" | "true" | "type" | "view" | "with" | "{" | "||" | "}";
19
+ type ZModelTokenNames = ZModelTerminalNames | ZModelKeywordNames;
20
+ type AbstractDeclaration = Attribute | DataModel | DataSource | Enum | FunctionDecl | GeneratorDecl | Plugin | Procedure | TypeDef;
21
+ declare const AbstractDeclaration: {
22
+ readonly $type: "AbstractDeclaration";
23
+ };
24
+ declare function isAbstractDeclaration(item: unknown): item is AbstractDeclaration;
25
+ interface Argument extends langium.AstNode {
26
+ readonly $container: InvocationExpr;
27
+ readonly $type: 'Argument';
28
+ value: Expression;
29
+ }
30
+ declare const Argument: {
31
+ readonly $type: "Argument";
32
+ readonly value: "value";
33
+ };
34
+ declare function isArgument(item: unknown): item is Argument;
35
+ interface ArrayExpr extends langium.AstNode {
36
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | FieldInitializer | FunctionDecl | MemberAccessExpr | PluginField | ReferenceArg | UnaryExpr;
37
+ readonly $type: 'ArrayExpr';
38
+ items: Array<Expression>;
39
+ }
40
+ declare const ArrayExpr: {
41
+ readonly $type: "ArrayExpr";
42
+ readonly items: "items";
43
+ };
44
+ declare function isArrayExpr(item: unknown): item is ArrayExpr;
45
+ interface Attribute extends langium.AstNode {
46
+ readonly $container: Model;
47
+ readonly $type: 'Attribute';
48
+ attributes: Array<InternalAttribute>;
49
+ comments: Array<string>;
50
+ name: string;
51
+ params: Array<AttributeParam>;
52
+ }
53
+ declare const Attribute: {
54
+ readonly $type: "Attribute";
55
+ readonly attributes: "attributes";
56
+ readonly comments: "comments";
57
+ readonly name: "name";
58
+ readonly params: "params";
59
+ };
60
+ declare function isAttribute(item: unknown): item is Attribute;
61
+ interface AttributeArg extends langium.AstNode {
62
+ readonly $container: DataFieldAttribute | DataModelAttribute | InternalAttribute;
63
+ readonly $type: 'AttributeArg';
64
+ name?: RegularID;
65
+ value: Expression;
66
+ /** Resolved attribute param declaration */
67
+ $resolvedParam?: AttributeParam;
68
+ }
69
+ declare const AttributeArg: {
70
+ readonly $type: "AttributeArg";
71
+ readonly name: "name";
72
+ readonly value: "value";
73
+ };
74
+ declare function isAttributeArg(item: unknown): item is AttributeArg;
75
+ interface AttributeParam extends langium.AstNode {
76
+ readonly $container: Attribute;
77
+ readonly $type: 'AttributeParam';
78
+ attributes: Array<InternalAttribute>;
79
+ comments: Array<string>;
80
+ default: boolean;
81
+ name: RegularID;
82
+ type: AttributeParamType;
83
+ }
84
+ declare const AttributeParam: {
85
+ readonly $type: "AttributeParam";
86
+ readonly attributes: "attributes";
87
+ readonly comments: "comments";
88
+ readonly default: "default";
89
+ readonly name: "name";
90
+ readonly type: "type";
91
+ };
92
+ declare function isAttributeParam(item: unknown): item is AttributeParam;
93
+ interface AttributeParamType extends langium.AstNode {
94
+ readonly $container: AttributeParam;
95
+ readonly $type: 'AttributeParamType';
96
+ array: boolean;
97
+ optional: boolean;
98
+ reference?: langium.Reference<TypeDeclaration>;
99
+ type?: 'ContextType' | 'FieldReference' | 'TransitiveFieldReference' | ExpressionType;
100
+ }
101
+ declare const AttributeParamType: {
102
+ readonly $type: "AttributeParamType";
103
+ readonly array: "array";
104
+ readonly optional: "optional";
105
+ readonly reference: "reference";
106
+ readonly type: "type";
107
+ };
108
+ declare function isAttributeParamType(item: unknown): item is AttributeParamType;
109
+ interface BinaryExpr extends langium.AstNode {
110
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | FieldInitializer | FunctionDecl | MemberAccessExpr | ReferenceArg | UnaryExpr;
111
+ readonly $type: 'BinaryExpr';
112
+ binding?: CollectionPredicateBinding;
113
+ left: Expression;
114
+ operator: '!' | '!=' | '&&' | '<' | '<=' | '==' | '>' | '>=' | '?' | '^' | 'in' | '||';
115
+ right: Expression;
116
+ }
117
+ declare const BinaryExpr: {
118
+ readonly $type: "BinaryExpr";
119
+ readonly binding: "binding";
120
+ readonly left: "left";
121
+ readonly operator: "operator";
122
+ readonly right: "right";
123
+ };
124
+ declare function isBinaryExpr(item: unknown): item is BinaryExpr;
125
+ type Boolean = boolean;
126
+ declare function isBoolean(item: unknown): item is Boolean;
127
+ interface BooleanLiteral extends langium.AstNode {
128
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | ConfigArrayExpr | ConfigField | ConfigInvocationArg | FieldInitializer | FunctionDecl | MemberAccessExpr | PluginField | ReferenceArg | UnaryExpr | UnsupportedFieldType;
129
+ readonly $type: 'BooleanLiteral';
130
+ value: Boolean;
131
+ }
132
+ declare const BooleanLiteral: {
133
+ readonly $type: "BooleanLiteral";
134
+ readonly value: "value";
135
+ };
136
+ declare function isBooleanLiteral(item: unknown): item is BooleanLiteral;
137
+ type BuiltinType = 'BigInt' | 'Boolean' | 'Bytes' | 'DateTime' | 'Decimal' | 'Float' | 'Int' | 'Json' | 'String';
138
+ declare function isBuiltinType(item: unknown): item is BuiltinType;
139
+ interface CollectionPredicateBinding extends langium.AstNode {
140
+ readonly $container: BinaryExpr;
141
+ readonly $type: 'CollectionPredicateBinding';
142
+ name: RegularID;
143
+ }
144
+ declare const CollectionPredicateBinding: {
145
+ readonly $type: "CollectionPredicateBinding";
146
+ readonly name: "name";
147
+ };
148
+ declare function isCollectionPredicateBinding(item: unknown): item is CollectionPredicateBinding;
149
+ interface ConfigArrayExpr extends langium.AstNode {
150
+ readonly $container: ConfigField;
151
+ readonly $type: 'ConfigArrayExpr';
152
+ items: Array<ConfigInvocationExpr | LiteralExpr>;
153
+ }
154
+ declare const ConfigArrayExpr: {
155
+ readonly $type: "ConfigArrayExpr";
156
+ readonly items: "items";
157
+ };
158
+ declare function isConfigArrayExpr(item: unknown): item is ConfigArrayExpr;
159
+ type ConfigExpr = ConfigArrayExpr | InvocationExpr | LiteralExpr;
160
+ declare const ConfigExpr: {
161
+ readonly $type: "ConfigExpr";
162
+ };
163
+ declare function isConfigExpr(item: unknown): item is ConfigExpr;
164
+ interface ConfigField extends langium.AstNode {
165
+ readonly $container: DataSource | GeneratorDecl;
166
+ readonly $type: 'ConfigField';
167
+ name: RegularID;
168
+ value: ConfigExpr;
169
+ }
170
+ declare const ConfigField: {
171
+ readonly $type: "ConfigField";
172
+ readonly name: "name";
173
+ readonly value: "value";
174
+ };
175
+ declare function isConfigField(item: unknown): item is ConfigField;
176
+ interface ConfigInvocationArg extends langium.AstNode {
177
+ readonly $container: ConfigInvocationExpr;
178
+ readonly $type: 'ConfigInvocationArg';
179
+ name: string;
180
+ value: LiteralExpr;
181
+ }
182
+ declare const ConfigInvocationArg: {
183
+ readonly $type: "ConfigInvocationArg";
184
+ readonly name: "name";
185
+ readonly value: "value";
186
+ };
187
+ declare function isConfigInvocationArg(item: unknown): item is ConfigInvocationArg;
188
+ interface ConfigInvocationExpr extends langium.AstNode {
189
+ readonly $container: ConfigArrayExpr;
190
+ readonly $type: 'ConfigInvocationExpr';
191
+ args: Array<ConfigInvocationArg>;
192
+ name: string;
193
+ }
194
+ declare const ConfigInvocationExpr: {
195
+ readonly $type: "ConfigInvocationExpr";
196
+ readonly args: "args";
197
+ readonly name: "name";
198
+ };
199
+ declare function isConfigInvocationExpr(item: unknown): item is ConfigInvocationExpr;
200
+ interface DataField extends langium.AstNode {
201
+ readonly $container: DataModel | TypeDef;
202
+ readonly $type: 'DataField';
203
+ attributes: Array<DataFieldAttribute>;
204
+ comments: Array<string>;
205
+ name: RegularIDWithTypeNames;
206
+ type: DataFieldType;
207
+ }
208
+ declare const DataField: {
209
+ readonly $type: "DataField";
210
+ readonly attributes: "attributes";
211
+ readonly comments: "comments";
212
+ readonly name: "name";
213
+ readonly type: "type";
214
+ };
215
+ declare function isDataField(item: unknown): item is DataField;
216
+ interface DataFieldAttribute extends langium.AstNode {
217
+ readonly $container: DataField | EnumField;
218
+ readonly $type: 'DataFieldAttribute';
219
+ args: Array<AttributeArg>;
220
+ decl: langium.Reference<Attribute>;
221
+ }
222
+ declare const DataFieldAttribute: {
223
+ readonly $type: "DataFieldAttribute";
224
+ readonly args: "args";
225
+ readonly decl: "decl";
226
+ };
227
+ declare function isDataFieldAttribute(item: unknown): item is DataFieldAttribute;
228
+ interface DataFieldType extends langium.AstNode {
229
+ readonly $container: DataField;
230
+ readonly $type: 'DataFieldType';
231
+ array: boolean;
232
+ optional: boolean;
233
+ reference?: langium.Reference<TypeDeclaration>;
234
+ type?: BuiltinType;
235
+ unsupported?: UnsupportedFieldType;
236
+ }
237
+ declare const DataFieldType: {
238
+ readonly $type: "DataFieldType";
239
+ readonly array: "array";
240
+ readonly optional: "optional";
241
+ readonly reference: "reference";
242
+ readonly type: "type";
243
+ readonly unsupported: "unsupported";
244
+ };
245
+ declare function isDataFieldType(item: unknown): item is DataFieldType;
246
+ interface DataModel extends langium.AstNode {
247
+ readonly $container: Model;
248
+ readonly $type: 'DataModel';
249
+ attributes: Array<DataModelAttribute>;
250
+ baseModel?: langium.Reference<DataModel>;
251
+ comments: Array<string>;
252
+ fields: Array<DataField>;
253
+ isView: boolean;
254
+ mixins: Array<langium.Reference<TypeDef>>;
255
+ name: RegularID;
256
+ /** All fields including those marked with `@ignore` */
257
+ $allFields?: DataField[];
258
+ }
259
+ declare const DataModel: {
260
+ readonly $type: "DataModel";
261
+ readonly attributes: "attributes";
262
+ readonly baseModel: "baseModel";
263
+ readonly comments: "comments";
264
+ readonly fields: "fields";
265
+ readonly isView: "isView";
266
+ readonly mixins: "mixins";
267
+ readonly name: "name";
268
+ };
269
+ declare function isDataModel(item: unknown): item is DataModel;
270
+ interface DataModelAttribute extends langium.AstNode {
271
+ readonly $container: DataModel | Enum | TypeDef;
272
+ readonly $type: 'DataModelAttribute';
273
+ args: Array<AttributeArg>;
274
+ decl: langium.Reference<Attribute>;
275
+ }
276
+ declare const DataModelAttribute: {
277
+ readonly $type: "DataModelAttribute";
278
+ readonly args: "args";
279
+ readonly decl: "decl";
280
+ };
281
+ declare function isDataModelAttribute(item: unknown): item is DataModelAttribute;
282
+ interface DataSource extends langium.AstNode {
283
+ readonly $container: Model;
284
+ readonly $type: 'DataSource';
285
+ fields: Array<ConfigField>;
286
+ name: RegularID;
287
+ }
288
+ declare const DataSource: {
289
+ readonly $type: "DataSource";
290
+ readonly fields: "fields";
291
+ readonly name: "name";
292
+ };
293
+ declare function isDataSource(item: unknown): item is DataSource;
294
+ interface Enum extends langium.AstNode {
295
+ readonly $container: Model;
296
+ readonly $type: 'Enum';
297
+ attributes: Array<DataModelAttribute>;
298
+ comments: Array<string>;
299
+ fields: Array<EnumField>;
300
+ name: RegularID;
301
+ }
302
+ declare const Enum: {
303
+ readonly $type: "Enum";
304
+ readonly attributes: "attributes";
305
+ readonly comments: "comments";
306
+ readonly fields: "fields";
307
+ readonly name: "name";
308
+ };
309
+ declare function isEnum(item: unknown): item is Enum;
310
+ interface EnumField extends langium.AstNode {
311
+ readonly $container: Enum;
312
+ readonly $type: 'EnumField';
313
+ attributes: Array<DataFieldAttribute>;
314
+ comments: Array<string>;
315
+ name: RegularIDWithTypeNames;
316
+ }
317
+ declare const EnumField: {
318
+ readonly $type: "EnumField";
319
+ readonly attributes: "attributes";
320
+ readonly comments: "comments";
321
+ readonly name: "name";
322
+ };
323
+ declare function isEnumField(item: unknown): item is EnumField;
324
+ type Expression = ArrayExpr | BinaryExpr | InvocationExpr | LiteralExpr | MemberAccessExpr | NullExpr | ObjectExpr | ReferenceExpr | ThisExpr | UnaryExpr;
325
+ declare const Expression: {
326
+ readonly $type: "Expression";
327
+ };
328
+ declare function isExpression(item: unknown): item is Expression;
329
+ type ExpressionType = 'Any' | 'BigInt' | 'Boolean' | 'Bytes' | 'DateTime' | 'Decimal' | 'Float' | 'Int' | 'Json' | 'Null' | 'Object' | 'String' | 'Undefined' | 'Unsupported' | 'Void';
330
+ declare function isExpressionType(item: unknown): item is ExpressionType;
331
+ interface FieldInitializer extends langium.AstNode {
332
+ readonly $container: ObjectExpr;
333
+ readonly $type: 'FieldInitializer';
334
+ name: RegularID | string;
335
+ value: Expression;
336
+ }
337
+ declare const FieldInitializer: {
338
+ readonly $type: "FieldInitializer";
339
+ readonly name: "name";
340
+ readonly value: "value";
341
+ };
342
+ declare function isFieldInitializer(item: unknown): item is FieldInitializer;
343
+ interface FunctionDecl extends langium.AstNode {
344
+ readonly $container: Model;
345
+ readonly $type: 'FunctionDecl';
346
+ attributes: Array<InternalAttribute>;
347
+ expression?: Expression;
348
+ name: RegularID;
349
+ params: Array<FunctionParam>;
350
+ returnType: FunctionParamType;
351
+ }
352
+ declare const FunctionDecl: {
353
+ readonly $type: "FunctionDecl";
354
+ readonly attributes: "attributes";
355
+ readonly expression: "expression";
356
+ readonly name: "name";
357
+ readonly params: "params";
358
+ readonly returnType: "returnType";
359
+ };
360
+ declare function isFunctionDecl(item: unknown): item is FunctionDecl;
361
+ interface FunctionParam extends langium.AstNode {
362
+ readonly $container: FunctionDecl;
363
+ readonly $type: 'FunctionParam';
364
+ name: RegularID;
365
+ optional: boolean;
366
+ type: FunctionParamType;
367
+ }
368
+ declare const FunctionParam: {
369
+ readonly $type: "FunctionParam";
370
+ readonly name: "name";
371
+ readonly optional: "optional";
372
+ readonly type: "type";
373
+ };
374
+ declare function isFunctionParam(item: unknown): item is FunctionParam;
375
+ interface FunctionParamType extends langium.AstNode {
376
+ readonly $container: FunctionDecl | FunctionParam | Procedure | ProcedureParam;
377
+ readonly $type: 'FunctionParamType';
378
+ array: boolean;
379
+ reference?: langium.Reference<TypeDeclaration>;
380
+ type?: ExpressionType;
381
+ }
382
+ declare const FunctionParamType: {
383
+ readonly $type: "FunctionParamType";
384
+ readonly array: "array";
385
+ readonly reference: "reference";
386
+ readonly type: "type";
387
+ };
388
+ declare function isFunctionParamType(item: unknown): item is FunctionParamType;
389
+ interface GeneratorDecl extends langium.AstNode {
390
+ readonly $container: Model;
391
+ readonly $type: 'GeneratorDecl';
392
+ fields: Array<ConfigField>;
393
+ name: RegularID;
394
+ }
395
+ declare const GeneratorDecl: {
396
+ readonly $type: "GeneratorDecl";
397
+ readonly fields: "fields";
398
+ readonly name: "name";
399
+ };
400
+ declare function isGeneratorDecl(item: unknown): item is GeneratorDecl;
401
+ interface InternalAttribute extends langium.AstNode {
402
+ readonly $container: Attribute | AttributeParam | FunctionDecl | Procedure;
403
+ readonly $type: 'InternalAttribute';
404
+ args: Array<AttributeArg>;
405
+ decl: langium.Reference<Attribute>;
406
+ }
407
+ declare const InternalAttribute: {
408
+ readonly $type: "InternalAttribute";
409
+ readonly args: "args";
410
+ readonly decl: "decl";
411
+ };
412
+ declare function isInternalAttribute(item: unknown): item is InternalAttribute;
413
+ interface InvocationExpr extends langium.AstNode {
414
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | ConfigField | FieldInitializer | FunctionDecl | MemberAccessExpr | ReferenceArg | UnaryExpr;
415
+ readonly $type: 'InvocationExpr';
416
+ args: Array<Argument>;
417
+ function: langium.Reference<FunctionDecl>;
418
+ }
419
+ declare const InvocationExpr: {
420
+ readonly $type: "InvocationExpr";
421
+ readonly args: "args";
422
+ readonly function: "function";
423
+ };
424
+ declare function isInvocationExpr(item: unknown): item is InvocationExpr;
425
+ type LiteralExpr = BooleanLiteral | NumberLiteral | StringLiteral;
426
+ declare const LiteralExpr: {
427
+ readonly $type: "LiteralExpr";
428
+ };
429
+ declare function isLiteralExpr(item: unknown): item is LiteralExpr;
430
+ interface MemberAccessExpr extends langium.AstNode {
431
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | FieldInitializer | FunctionDecl | MemberAccessExpr | ReferenceArg | UnaryExpr;
432
+ readonly $type: 'MemberAccessExpr';
433
+ member: langium.Reference<MemberAccessTarget>;
434
+ operand: Expression;
435
+ }
436
+ declare const MemberAccessExpr: {
437
+ readonly $type: "MemberAccessExpr";
438
+ readonly member: "member";
439
+ readonly operand: "operand";
440
+ };
441
+ declare function isMemberAccessExpr(item: unknown): item is MemberAccessExpr;
442
+ type MemberAccessTarget = DataField;
443
+ declare const MemberAccessTarget: {
444
+ readonly $type: "MemberAccessTarget";
445
+ };
446
+ declare function isMemberAccessTarget(item: unknown): item is MemberAccessTarget;
447
+ interface Model extends langium.AstNode {
448
+ readonly $type: 'Model';
449
+ declarations: Array<AbstractDeclaration>;
450
+ imports: Array<ModelImport>;
451
+ }
452
+ declare const Model: {
453
+ readonly $type: "Model";
454
+ readonly declarations: "declarations";
455
+ readonly imports: "imports";
456
+ };
457
+ declare function isModel(item: unknown): item is Model;
458
+ interface ModelImport extends langium.AstNode {
459
+ readonly $container: Model;
460
+ readonly $type: 'ModelImport';
461
+ path: string;
462
+ }
463
+ declare const ModelImport: {
464
+ readonly $type: "ModelImport";
465
+ readonly path: "path";
466
+ };
467
+ declare function isModelImport(item: unknown): item is ModelImport;
468
+ interface NullExpr extends langium.AstNode {
469
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | FieldInitializer | FunctionDecl | MemberAccessExpr | ReferenceArg | UnaryExpr;
470
+ readonly $type: 'NullExpr';
471
+ value: 'null';
472
+ }
473
+ declare const NullExpr: {
474
+ readonly $type: "NullExpr";
475
+ readonly value: "value";
476
+ };
477
+ declare function isNullExpr(item: unknown): item is NullExpr;
478
+ interface NumberLiteral extends langium.AstNode {
479
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | ConfigArrayExpr | ConfigField | ConfigInvocationArg | FieldInitializer | FunctionDecl | MemberAccessExpr | PluginField | ReferenceArg | UnaryExpr | UnsupportedFieldType;
480
+ readonly $type: 'NumberLiteral';
481
+ value: string;
482
+ }
483
+ declare const NumberLiteral: {
484
+ readonly $type: "NumberLiteral";
485
+ readonly value: "value";
486
+ };
487
+ declare function isNumberLiteral(item: unknown): item is NumberLiteral;
488
+ interface ObjectExpr extends langium.AstNode {
489
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | FieldInitializer | FunctionDecl | MemberAccessExpr | PluginField | ReferenceArg | UnaryExpr;
490
+ readonly $type: 'ObjectExpr';
491
+ fields: Array<FieldInitializer>;
492
+ }
493
+ declare const ObjectExpr: {
494
+ readonly $type: "ObjectExpr";
495
+ readonly fields: "fields";
496
+ };
497
+ declare function isObjectExpr(item: unknown): item is ObjectExpr;
498
+ interface Plugin extends langium.AstNode {
499
+ readonly $container: Model;
500
+ readonly $type: 'Plugin';
501
+ fields: Array<PluginField>;
502
+ name: RegularID;
503
+ }
504
+ declare const Plugin: {
505
+ readonly $type: "Plugin";
506
+ readonly fields: "fields";
507
+ readonly name: "name";
508
+ };
509
+ declare function isPlugin(item: unknown): item is Plugin;
510
+ interface PluginField extends langium.AstNode {
511
+ readonly $container: Plugin;
512
+ readonly $type: 'PluginField';
513
+ name: RegularID;
514
+ value: ArrayExpr | LiteralExpr | ObjectExpr;
515
+ }
516
+ declare const PluginField: {
517
+ readonly $type: "PluginField";
518
+ readonly name: "name";
519
+ readonly value: "value";
520
+ };
521
+ declare function isPluginField(item: unknown): item is PluginField;
522
+ interface Procedure extends langium.AstNode {
523
+ readonly $container: Model;
524
+ readonly $type: 'Procedure';
525
+ attributes: Array<InternalAttribute>;
526
+ mutation: boolean;
527
+ name: RegularID;
528
+ params: Array<ProcedureParam>;
529
+ returnType: FunctionParamType;
530
+ }
531
+ declare const Procedure: {
532
+ readonly $type: "Procedure";
533
+ readonly attributes: "attributes";
534
+ readonly mutation: "mutation";
535
+ readonly name: "name";
536
+ readonly params: "params";
537
+ readonly returnType: "returnType";
538
+ };
539
+ declare function isProcedure(item: unknown): item is Procedure;
540
+ interface ProcedureParam extends langium.AstNode {
541
+ readonly $container: Procedure;
542
+ readonly $type: 'ProcedureParam';
543
+ name: RegularID;
544
+ optional: boolean;
545
+ type: FunctionParamType;
546
+ }
547
+ declare const ProcedureParam: {
548
+ readonly $type: "ProcedureParam";
549
+ readonly name: "name";
550
+ readonly optional: "optional";
551
+ readonly type: "type";
552
+ };
553
+ declare function isProcedureParam(item: unknown): item is ProcedureParam;
554
+ interface ReferenceArg extends langium.AstNode {
555
+ readonly $container: ReferenceExpr;
556
+ readonly $type: 'ReferenceArg';
557
+ name: string;
558
+ value: Expression;
559
+ }
560
+ declare const ReferenceArg: {
561
+ readonly $type: "ReferenceArg";
562
+ readonly name: "name";
563
+ readonly value: "value";
564
+ };
565
+ declare function isReferenceArg(item: unknown): item is ReferenceArg;
566
+ interface ReferenceExpr extends langium.AstNode {
567
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | FieldInitializer | FunctionDecl | MemberAccessExpr | ReferenceArg | UnaryExpr;
568
+ readonly $type: 'ReferenceExpr';
569
+ args: Array<ReferenceArg>;
570
+ target: langium.Reference<ReferenceTarget>;
571
+ }
572
+ declare const ReferenceExpr: {
573
+ readonly $type: "ReferenceExpr";
574
+ readonly args: "args";
575
+ readonly target: "target";
576
+ };
577
+ declare function isReferenceExpr(item: unknown): item is ReferenceExpr;
578
+ type ReferenceTarget = CollectionPredicateBinding | DataField | EnumField | FunctionParam;
579
+ declare const ReferenceTarget: {
580
+ readonly $type: "ReferenceTarget";
581
+ };
582
+ declare function isReferenceTarget(item: unknown): item is ReferenceTarget;
583
+ type RegularID = 'abstract' | 'attribute' | 'datasource' | 'enum' | 'import' | 'in' | 'model' | 'plugin' | 'type' | 'view' | string;
584
+ declare function isRegularID(item: unknown): item is RegularID;
585
+ type RegularIDWithTypeNames = 'Any' | 'BigInt' | 'Boolean' | 'Bytes' | 'DateTime' | 'Decimal' | 'Float' | 'Int' | 'Json' | 'Null' | 'Object' | 'String' | 'Unsupported' | 'Void' | RegularID;
586
+ declare function isRegularIDWithTypeNames(item: unknown): item is RegularIDWithTypeNames;
587
+ interface StringLiteral extends langium.AstNode {
588
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | ConfigArrayExpr | ConfigField | ConfigInvocationArg | FieldInitializer | FunctionDecl | MemberAccessExpr | PluginField | ReferenceArg | UnaryExpr | UnsupportedFieldType;
589
+ readonly $type: 'StringLiteral';
590
+ value: string;
591
+ }
592
+ declare const StringLiteral: {
593
+ readonly $type: "StringLiteral";
594
+ readonly value: "value";
595
+ };
596
+ declare function isStringLiteral(item: unknown): item is StringLiteral;
597
+ interface ThisExpr extends langium.AstNode {
598
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | FieldInitializer | FunctionDecl | MemberAccessExpr | ReferenceArg | UnaryExpr;
599
+ readonly $type: 'ThisExpr';
600
+ value: 'this';
601
+ }
602
+ declare const ThisExpr: {
603
+ readonly $type: "ThisExpr";
604
+ readonly value: "value";
605
+ };
606
+ declare function isThisExpr(item: unknown): item is ThisExpr;
607
+ type TypeDeclaration = DataModel | Enum | TypeDef;
608
+ declare const TypeDeclaration: {
609
+ readonly $type: "TypeDeclaration";
610
+ };
611
+ declare function isTypeDeclaration(item: unknown): item is TypeDeclaration;
612
+ interface TypeDef extends langium.AstNode {
613
+ readonly $container: Model;
614
+ readonly $type: 'TypeDef';
615
+ attributes: Array<DataModelAttribute>;
616
+ comments: Array<string>;
617
+ fields: Array<DataField>;
618
+ mixins: Array<langium.Reference<TypeDef>>;
619
+ name: RegularID;
620
+ }
621
+ declare const TypeDef: {
622
+ readonly $type: "TypeDef";
623
+ readonly attributes: "attributes";
624
+ readonly comments: "comments";
625
+ readonly fields: "fields";
626
+ readonly mixins: "mixins";
627
+ readonly name: "name";
628
+ };
629
+ declare function isTypeDef(item: unknown): item is TypeDef;
630
+ interface UnaryExpr extends langium.AstNode {
631
+ readonly $container: Argument | ArrayExpr | AttributeArg | BinaryExpr | FieldInitializer | FunctionDecl | MemberAccessExpr | ReferenceArg | UnaryExpr;
632
+ readonly $type: 'UnaryExpr';
633
+ operand: Expression;
634
+ operator: '!';
635
+ }
636
+ declare const UnaryExpr: {
637
+ readonly $type: "UnaryExpr";
638
+ readonly operand: "operand";
639
+ readonly operator: "operator";
640
+ };
641
+ declare function isUnaryExpr(item: unknown): item is UnaryExpr;
642
+ interface UnsupportedFieldType extends langium.AstNode {
643
+ readonly $container: DataFieldType;
644
+ readonly $type: 'UnsupportedFieldType';
645
+ value: LiteralExpr;
646
+ }
647
+ declare const UnsupportedFieldType: {
648
+ readonly $type: "UnsupportedFieldType";
649
+ readonly value: "value";
650
+ };
651
+ declare function isUnsupportedFieldType(item: unknown): item is UnsupportedFieldType;
652
+ type ZModelAstType = {
653
+ AbstractDeclaration: AbstractDeclaration;
654
+ Argument: Argument;
655
+ ArrayExpr: ArrayExpr;
656
+ Attribute: Attribute;
657
+ AttributeArg: AttributeArg;
658
+ AttributeParam: AttributeParam;
659
+ AttributeParamType: AttributeParamType;
660
+ BinaryExpr: BinaryExpr;
661
+ BooleanLiteral: BooleanLiteral;
662
+ CollectionPredicateBinding: CollectionPredicateBinding;
663
+ ConfigArrayExpr: ConfigArrayExpr;
664
+ ConfigExpr: ConfigExpr;
665
+ ConfigField: ConfigField;
666
+ ConfigInvocationArg: ConfigInvocationArg;
667
+ ConfigInvocationExpr: ConfigInvocationExpr;
668
+ DataField: DataField;
669
+ DataFieldAttribute: DataFieldAttribute;
670
+ DataFieldType: DataFieldType;
671
+ DataModel: DataModel;
672
+ DataModelAttribute: DataModelAttribute;
673
+ DataSource: DataSource;
674
+ Enum: Enum;
675
+ EnumField: EnumField;
676
+ Expression: Expression;
677
+ FieldInitializer: FieldInitializer;
678
+ FunctionDecl: FunctionDecl;
679
+ FunctionParam: FunctionParam;
680
+ FunctionParamType: FunctionParamType;
681
+ GeneratorDecl: GeneratorDecl;
682
+ InternalAttribute: InternalAttribute;
683
+ InvocationExpr: InvocationExpr;
684
+ LiteralExpr: LiteralExpr;
685
+ MemberAccessExpr: MemberAccessExpr;
686
+ MemberAccessTarget: MemberAccessTarget;
687
+ Model: Model;
688
+ ModelImport: ModelImport;
689
+ NullExpr: NullExpr;
690
+ NumberLiteral: NumberLiteral;
691
+ ObjectExpr: ObjectExpr;
692
+ Plugin: Plugin;
693
+ PluginField: PluginField;
694
+ Procedure: Procedure;
695
+ ProcedureParam: ProcedureParam;
696
+ ReferenceArg: ReferenceArg;
697
+ ReferenceExpr: ReferenceExpr;
698
+ ReferenceTarget: ReferenceTarget;
699
+ StringLiteral: StringLiteral;
700
+ ThisExpr: ThisExpr;
701
+ TypeDeclaration: TypeDeclaration;
702
+ TypeDef: TypeDef;
703
+ UnaryExpr: UnaryExpr;
704
+ UnsupportedFieldType: UnsupportedFieldType;
705
+ };
706
+ declare class ZModelAstReflection extends langium.AbstractAstReflection {
707
+ readonly types: {
708
+ readonly AbstractDeclaration: {
709
+ readonly name: "AbstractDeclaration";
710
+ readonly properties: {};
711
+ readonly superTypes: [];
712
+ };
713
+ readonly Argument: {
714
+ readonly name: "Argument";
715
+ readonly properties: {
716
+ readonly value: {
717
+ readonly name: "value";
718
+ };
719
+ };
720
+ readonly superTypes: [];
721
+ };
722
+ readonly ArrayExpr: {
723
+ readonly name: "ArrayExpr";
724
+ readonly properties: {
725
+ readonly items: {
726
+ readonly name: "items";
727
+ readonly defaultValue: [];
728
+ };
729
+ };
730
+ readonly superTypes: ["Expression"];
731
+ };
732
+ readonly Attribute: {
733
+ readonly name: "Attribute";
734
+ readonly properties: {
735
+ readonly attributes: {
736
+ readonly name: "attributes";
737
+ readonly defaultValue: [];
738
+ };
739
+ readonly comments: {
740
+ readonly name: "comments";
741
+ readonly defaultValue: [];
742
+ };
743
+ readonly name: {
744
+ readonly name: "name";
745
+ };
746
+ readonly params: {
747
+ readonly name: "params";
748
+ readonly defaultValue: [];
749
+ };
750
+ };
751
+ readonly superTypes: ["AbstractDeclaration"];
752
+ };
753
+ readonly AttributeArg: {
754
+ readonly name: "AttributeArg";
755
+ readonly properties: {
756
+ readonly name: {
757
+ readonly name: "name";
758
+ };
759
+ readonly value: {
760
+ readonly name: "value";
761
+ };
762
+ };
763
+ readonly superTypes: [];
764
+ };
765
+ readonly AttributeParam: {
766
+ readonly name: "AttributeParam";
767
+ readonly properties: {
768
+ readonly attributes: {
769
+ readonly name: "attributes";
770
+ readonly defaultValue: [];
771
+ };
772
+ readonly comments: {
773
+ readonly name: "comments";
774
+ readonly defaultValue: [];
775
+ };
776
+ readonly default: {
777
+ readonly name: "default";
778
+ readonly defaultValue: false;
779
+ };
780
+ readonly name: {
781
+ readonly name: "name";
782
+ };
783
+ readonly type: {
784
+ readonly name: "type";
785
+ };
786
+ };
787
+ readonly superTypes: [];
788
+ };
789
+ readonly AttributeParamType: {
790
+ readonly name: "AttributeParamType";
791
+ readonly properties: {
792
+ readonly array: {
793
+ readonly name: "array";
794
+ readonly defaultValue: false;
795
+ };
796
+ readonly optional: {
797
+ readonly name: "optional";
798
+ readonly defaultValue: false;
799
+ };
800
+ readonly reference: {
801
+ readonly name: "reference";
802
+ readonly referenceType: "TypeDeclaration";
803
+ };
804
+ readonly type: {
805
+ readonly name: "type";
806
+ };
807
+ };
808
+ readonly superTypes: [];
809
+ };
810
+ readonly BinaryExpr: {
811
+ readonly name: "BinaryExpr";
812
+ readonly properties: {
813
+ readonly binding: {
814
+ readonly name: "binding";
815
+ };
816
+ readonly left: {
817
+ readonly name: "left";
818
+ };
819
+ readonly operator: {
820
+ readonly name: "operator";
821
+ };
822
+ readonly right: {
823
+ readonly name: "right";
824
+ };
825
+ };
826
+ readonly superTypes: ["Expression"];
827
+ };
828
+ readonly BooleanLiteral: {
829
+ readonly name: "BooleanLiteral";
830
+ readonly properties: {
831
+ readonly value: {
832
+ readonly name: "value";
833
+ };
834
+ };
835
+ readonly superTypes: ["LiteralExpr"];
836
+ };
837
+ readonly CollectionPredicateBinding: {
838
+ readonly name: "CollectionPredicateBinding";
839
+ readonly properties: {
840
+ readonly name: {
841
+ readonly name: "name";
842
+ };
843
+ };
844
+ readonly superTypes: ["ReferenceTarget"];
845
+ };
846
+ readonly ConfigArrayExpr: {
847
+ readonly name: "ConfigArrayExpr";
848
+ readonly properties: {
849
+ readonly items: {
850
+ readonly name: "items";
851
+ readonly defaultValue: [];
852
+ };
853
+ };
854
+ readonly superTypes: ["ConfigExpr"];
855
+ };
856
+ readonly ConfigExpr: {
857
+ readonly name: "ConfigExpr";
858
+ readonly properties: {};
859
+ readonly superTypes: [];
860
+ };
861
+ readonly ConfigField: {
862
+ readonly name: "ConfigField";
863
+ readonly properties: {
864
+ readonly name: {
865
+ readonly name: "name";
866
+ };
867
+ readonly value: {
868
+ readonly name: "value";
869
+ };
870
+ };
871
+ readonly superTypes: [];
872
+ };
873
+ readonly ConfigInvocationArg: {
874
+ readonly name: "ConfigInvocationArg";
875
+ readonly properties: {
876
+ readonly name: {
877
+ readonly name: "name";
878
+ };
879
+ readonly value: {
880
+ readonly name: "value";
881
+ };
882
+ };
883
+ readonly superTypes: [];
884
+ };
885
+ readonly ConfigInvocationExpr: {
886
+ readonly name: "ConfigInvocationExpr";
887
+ readonly properties: {
888
+ readonly args: {
889
+ readonly name: "args";
890
+ readonly defaultValue: [];
891
+ };
892
+ readonly name: {
893
+ readonly name: "name";
894
+ };
895
+ };
896
+ readonly superTypes: [];
897
+ };
898
+ readonly DataField: {
899
+ readonly name: "DataField";
900
+ readonly properties: {
901
+ readonly attributes: {
902
+ readonly name: "attributes";
903
+ readonly defaultValue: [];
904
+ };
905
+ readonly comments: {
906
+ readonly name: "comments";
907
+ readonly defaultValue: [];
908
+ };
909
+ readonly name: {
910
+ readonly name: "name";
911
+ };
912
+ readonly type: {
913
+ readonly name: "type";
914
+ };
915
+ };
916
+ readonly superTypes: ["MemberAccessTarget", "ReferenceTarget"];
917
+ };
918
+ readonly DataFieldAttribute: {
919
+ readonly name: "DataFieldAttribute";
920
+ readonly properties: {
921
+ readonly args: {
922
+ readonly name: "args";
923
+ readonly defaultValue: [];
924
+ };
925
+ readonly decl: {
926
+ readonly name: "decl";
927
+ readonly referenceType: "Attribute";
928
+ };
929
+ };
930
+ readonly superTypes: [];
931
+ };
932
+ readonly DataFieldType: {
933
+ readonly name: "DataFieldType";
934
+ readonly properties: {
935
+ readonly array: {
936
+ readonly name: "array";
937
+ readonly defaultValue: false;
938
+ };
939
+ readonly optional: {
940
+ readonly name: "optional";
941
+ readonly defaultValue: false;
942
+ };
943
+ readonly reference: {
944
+ readonly name: "reference";
945
+ readonly referenceType: "TypeDeclaration";
946
+ };
947
+ readonly type: {
948
+ readonly name: "type";
949
+ };
950
+ readonly unsupported: {
951
+ readonly name: "unsupported";
952
+ };
953
+ };
954
+ readonly superTypes: [];
955
+ };
956
+ readonly DataModel: {
957
+ readonly name: "DataModel";
958
+ readonly properties: {
959
+ readonly attributes: {
960
+ readonly name: "attributes";
961
+ readonly defaultValue: [];
962
+ };
963
+ readonly baseModel: {
964
+ readonly name: "baseModel";
965
+ readonly referenceType: "DataModel";
966
+ };
967
+ readonly comments: {
968
+ readonly name: "comments";
969
+ readonly defaultValue: [];
970
+ };
971
+ readonly fields: {
972
+ readonly name: "fields";
973
+ readonly defaultValue: [];
974
+ };
975
+ readonly isView: {
976
+ readonly name: "isView";
977
+ readonly defaultValue: false;
978
+ };
979
+ readonly mixins: {
980
+ readonly name: "mixins";
981
+ readonly defaultValue: [];
982
+ readonly referenceType: "TypeDef";
983
+ };
984
+ readonly name: {
985
+ readonly name: "name";
986
+ };
987
+ };
988
+ readonly superTypes: ["AbstractDeclaration", "TypeDeclaration"];
989
+ };
990
+ readonly DataModelAttribute: {
991
+ readonly name: "DataModelAttribute";
992
+ readonly properties: {
993
+ readonly args: {
994
+ readonly name: "args";
995
+ readonly defaultValue: [];
996
+ };
997
+ readonly decl: {
998
+ readonly name: "decl";
999
+ readonly referenceType: "Attribute";
1000
+ };
1001
+ };
1002
+ readonly superTypes: [];
1003
+ };
1004
+ readonly DataSource: {
1005
+ readonly name: "DataSource";
1006
+ readonly properties: {
1007
+ readonly fields: {
1008
+ readonly name: "fields";
1009
+ readonly defaultValue: [];
1010
+ };
1011
+ readonly name: {
1012
+ readonly name: "name";
1013
+ };
1014
+ };
1015
+ readonly superTypes: ["AbstractDeclaration"];
1016
+ };
1017
+ readonly Enum: {
1018
+ readonly name: "Enum";
1019
+ readonly properties: {
1020
+ readonly attributes: {
1021
+ readonly name: "attributes";
1022
+ readonly defaultValue: [];
1023
+ };
1024
+ readonly comments: {
1025
+ readonly name: "comments";
1026
+ readonly defaultValue: [];
1027
+ };
1028
+ readonly fields: {
1029
+ readonly name: "fields";
1030
+ readonly defaultValue: [];
1031
+ };
1032
+ readonly name: {
1033
+ readonly name: "name";
1034
+ };
1035
+ };
1036
+ readonly superTypes: ["AbstractDeclaration", "TypeDeclaration"];
1037
+ };
1038
+ readonly EnumField: {
1039
+ readonly name: "EnumField";
1040
+ readonly properties: {
1041
+ readonly attributes: {
1042
+ readonly name: "attributes";
1043
+ readonly defaultValue: [];
1044
+ };
1045
+ readonly comments: {
1046
+ readonly name: "comments";
1047
+ readonly defaultValue: [];
1048
+ };
1049
+ readonly name: {
1050
+ readonly name: "name";
1051
+ };
1052
+ };
1053
+ readonly superTypes: ["ReferenceTarget"];
1054
+ };
1055
+ readonly Expression: {
1056
+ readonly name: "Expression";
1057
+ readonly properties: {};
1058
+ readonly superTypes: [];
1059
+ };
1060
+ readonly FieldInitializer: {
1061
+ readonly name: "FieldInitializer";
1062
+ readonly properties: {
1063
+ readonly name: {
1064
+ readonly name: "name";
1065
+ };
1066
+ readonly value: {
1067
+ readonly name: "value";
1068
+ };
1069
+ };
1070
+ readonly superTypes: [];
1071
+ };
1072
+ readonly FunctionDecl: {
1073
+ readonly name: "FunctionDecl";
1074
+ readonly properties: {
1075
+ readonly attributes: {
1076
+ readonly name: "attributes";
1077
+ readonly defaultValue: [];
1078
+ };
1079
+ readonly expression: {
1080
+ readonly name: "expression";
1081
+ };
1082
+ readonly name: {
1083
+ readonly name: "name";
1084
+ };
1085
+ readonly params: {
1086
+ readonly name: "params";
1087
+ readonly defaultValue: [];
1088
+ };
1089
+ readonly returnType: {
1090
+ readonly name: "returnType";
1091
+ };
1092
+ };
1093
+ readonly superTypes: ["AbstractDeclaration"];
1094
+ };
1095
+ readonly FunctionParam: {
1096
+ readonly name: "FunctionParam";
1097
+ readonly properties: {
1098
+ readonly name: {
1099
+ readonly name: "name";
1100
+ };
1101
+ readonly optional: {
1102
+ readonly name: "optional";
1103
+ readonly defaultValue: false;
1104
+ };
1105
+ readonly type: {
1106
+ readonly name: "type";
1107
+ };
1108
+ };
1109
+ readonly superTypes: ["ReferenceTarget"];
1110
+ };
1111
+ readonly FunctionParamType: {
1112
+ readonly name: "FunctionParamType";
1113
+ readonly properties: {
1114
+ readonly array: {
1115
+ readonly name: "array";
1116
+ readonly defaultValue: false;
1117
+ };
1118
+ readonly reference: {
1119
+ readonly name: "reference";
1120
+ readonly referenceType: "TypeDeclaration";
1121
+ };
1122
+ readonly type: {
1123
+ readonly name: "type";
1124
+ };
1125
+ };
1126
+ readonly superTypes: [];
1127
+ };
1128
+ readonly GeneratorDecl: {
1129
+ readonly name: "GeneratorDecl";
1130
+ readonly properties: {
1131
+ readonly fields: {
1132
+ readonly name: "fields";
1133
+ readonly defaultValue: [];
1134
+ };
1135
+ readonly name: {
1136
+ readonly name: "name";
1137
+ };
1138
+ };
1139
+ readonly superTypes: ["AbstractDeclaration"];
1140
+ };
1141
+ readonly InternalAttribute: {
1142
+ readonly name: "InternalAttribute";
1143
+ readonly properties: {
1144
+ readonly args: {
1145
+ readonly name: "args";
1146
+ readonly defaultValue: [];
1147
+ };
1148
+ readonly decl: {
1149
+ readonly name: "decl";
1150
+ readonly referenceType: "Attribute";
1151
+ };
1152
+ };
1153
+ readonly superTypes: [];
1154
+ };
1155
+ readonly InvocationExpr: {
1156
+ readonly name: "InvocationExpr";
1157
+ readonly properties: {
1158
+ readonly args: {
1159
+ readonly name: "args";
1160
+ readonly defaultValue: [];
1161
+ };
1162
+ readonly function: {
1163
+ readonly name: "function";
1164
+ readonly referenceType: "FunctionDecl";
1165
+ };
1166
+ };
1167
+ readonly superTypes: ["ConfigExpr", "Expression"];
1168
+ };
1169
+ readonly LiteralExpr: {
1170
+ readonly name: "LiteralExpr";
1171
+ readonly properties: {};
1172
+ readonly superTypes: ["ConfigExpr", "Expression"];
1173
+ };
1174
+ readonly MemberAccessExpr: {
1175
+ readonly name: "MemberAccessExpr";
1176
+ readonly properties: {
1177
+ readonly member: {
1178
+ readonly name: "member";
1179
+ readonly referenceType: "MemberAccessTarget";
1180
+ };
1181
+ readonly operand: {
1182
+ readonly name: "operand";
1183
+ };
1184
+ };
1185
+ readonly superTypes: ["Expression"];
1186
+ };
1187
+ readonly MemberAccessTarget: {
1188
+ readonly name: "MemberAccessTarget";
1189
+ readonly properties: {};
1190
+ readonly superTypes: [];
1191
+ };
1192
+ readonly Model: {
1193
+ readonly name: "Model";
1194
+ readonly properties: {
1195
+ readonly declarations: {
1196
+ readonly name: "declarations";
1197
+ readonly defaultValue: [];
1198
+ };
1199
+ readonly imports: {
1200
+ readonly name: "imports";
1201
+ readonly defaultValue: [];
1202
+ };
1203
+ };
1204
+ readonly superTypes: [];
1205
+ };
1206
+ readonly ModelImport: {
1207
+ readonly name: "ModelImport";
1208
+ readonly properties: {
1209
+ readonly path: {
1210
+ readonly name: "path";
1211
+ };
1212
+ };
1213
+ readonly superTypes: [];
1214
+ };
1215
+ readonly NullExpr: {
1216
+ readonly name: "NullExpr";
1217
+ readonly properties: {
1218
+ readonly value: {
1219
+ readonly name: "value";
1220
+ };
1221
+ };
1222
+ readonly superTypes: ["Expression"];
1223
+ };
1224
+ readonly NumberLiteral: {
1225
+ readonly name: "NumberLiteral";
1226
+ readonly properties: {
1227
+ readonly value: {
1228
+ readonly name: "value";
1229
+ };
1230
+ };
1231
+ readonly superTypes: ["LiteralExpr"];
1232
+ };
1233
+ readonly ObjectExpr: {
1234
+ readonly name: "ObjectExpr";
1235
+ readonly properties: {
1236
+ readonly fields: {
1237
+ readonly name: "fields";
1238
+ readonly defaultValue: [];
1239
+ };
1240
+ };
1241
+ readonly superTypes: ["Expression"];
1242
+ };
1243
+ readonly Plugin: {
1244
+ readonly name: "Plugin";
1245
+ readonly properties: {
1246
+ readonly fields: {
1247
+ readonly name: "fields";
1248
+ readonly defaultValue: [];
1249
+ };
1250
+ readonly name: {
1251
+ readonly name: "name";
1252
+ };
1253
+ };
1254
+ readonly superTypes: ["AbstractDeclaration"];
1255
+ };
1256
+ readonly PluginField: {
1257
+ readonly name: "PluginField";
1258
+ readonly properties: {
1259
+ readonly name: {
1260
+ readonly name: "name";
1261
+ };
1262
+ readonly value: {
1263
+ readonly name: "value";
1264
+ };
1265
+ };
1266
+ readonly superTypes: [];
1267
+ };
1268
+ readonly Procedure: {
1269
+ readonly name: "Procedure";
1270
+ readonly properties: {
1271
+ readonly attributes: {
1272
+ readonly name: "attributes";
1273
+ readonly defaultValue: [];
1274
+ };
1275
+ readonly mutation: {
1276
+ readonly name: "mutation";
1277
+ readonly defaultValue: false;
1278
+ };
1279
+ readonly name: {
1280
+ readonly name: "name";
1281
+ };
1282
+ readonly params: {
1283
+ readonly name: "params";
1284
+ readonly defaultValue: [];
1285
+ };
1286
+ readonly returnType: {
1287
+ readonly name: "returnType";
1288
+ };
1289
+ };
1290
+ readonly superTypes: ["AbstractDeclaration"];
1291
+ };
1292
+ readonly ProcedureParam: {
1293
+ readonly name: "ProcedureParam";
1294
+ readonly properties: {
1295
+ readonly name: {
1296
+ readonly name: "name";
1297
+ };
1298
+ readonly optional: {
1299
+ readonly name: "optional";
1300
+ readonly defaultValue: false;
1301
+ };
1302
+ readonly type: {
1303
+ readonly name: "type";
1304
+ };
1305
+ };
1306
+ readonly superTypes: [];
1307
+ };
1308
+ readonly ReferenceArg: {
1309
+ readonly name: "ReferenceArg";
1310
+ readonly properties: {
1311
+ readonly name: {
1312
+ readonly name: "name";
1313
+ };
1314
+ readonly value: {
1315
+ readonly name: "value";
1316
+ };
1317
+ };
1318
+ readonly superTypes: [];
1319
+ };
1320
+ readonly ReferenceExpr: {
1321
+ readonly name: "ReferenceExpr";
1322
+ readonly properties: {
1323
+ readonly args: {
1324
+ readonly name: "args";
1325
+ readonly defaultValue: [];
1326
+ };
1327
+ readonly target: {
1328
+ readonly name: "target";
1329
+ readonly referenceType: "ReferenceTarget";
1330
+ };
1331
+ };
1332
+ readonly superTypes: ["Expression"];
1333
+ };
1334
+ readonly ReferenceTarget: {
1335
+ readonly name: "ReferenceTarget";
1336
+ readonly properties: {};
1337
+ readonly superTypes: [];
1338
+ };
1339
+ readonly StringLiteral: {
1340
+ readonly name: "StringLiteral";
1341
+ readonly properties: {
1342
+ readonly value: {
1343
+ readonly name: "value";
1344
+ };
1345
+ };
1346
+ readonly superTypes: ["LiteralExpr"];
1347
+ };
1348
+ readonly ThisExpr: {
1349
+ readonly name: "ThisExpr";
1350
+ readonly properties: {
1351
+ readonly value: {
1352
+ readonly name: "value";
1353
+ };
1354
+ };
1355
+ readonly superTypes: ["Expression"];
1356
+ };
1357
+ readonly TypeDeclaration: {
1358
+ readonly name: "TypeDeclaration";
1359
+ readonly properties: {};
1360
+ readonly superTypes: [];
1361
+ };
1362
+ readonly TypeDef: {
1363
+ readonly name: "TypeDef";
1364
+ readonly properties: {
1365
+ readonly attributes: {
1366
+ readonly name: "attributes";
1367
+ readonly defaultValue: [];
1368
+ };
1369
+ readonly comments: {
1370
+ readonly name: "comments";
1371
+ readonly defaultValue: [];
1372
+ };
1373
+ readonly fields: {
1374
+ readonly name: "fields";
1375
+ readonly defaultValue: [];
1376
+ };
1377
+ readonly mixins: {
1378
+ readonly name: "mixins";
1379
+ readonly defaultValue: [];
1380
+ readonly referenceType: "TypeDef";
1381
+ };
1382
+ readonly name: {
1383
+ readonly name: "name";
1384
+ };
1385
+ };
1386
+ readonly superTypes: ["AbstractDeclaration", "TypeDeclaration"];
1387
+ };
1388
+ readonly UnaryExpr: {
1389
+ readonly name: "UnaryExpr";
1390
+ readonly properties: {
1391
+ readonly operand: {
1392
+ readonly name: "operand";
1393
+ };
1394
+ readonly operator: {
1395
+ readonly name: "operator";
1396
+ };
1397
+ };
1398
+ readonly superTypes: ["Expression"];
1399
+ };
1400
+ readonly UnsupportedFieldType: {
1401
+ readonly name: "UnsupportedFieldType";
1402
+ readonly properties: {
1403
+ readonly value: {
1404
+ readonly name: "value";
1405
+ };
1406
+ };
1407
+ readonly superTypes: [];
1408
+ };
1409
+ };
1410
+ }
1411
+ declare const reflection: ZModelAstReflection;
1412
+ //#endregion
1413
+ //#region src/ast.d.ts
1414
+ /**
1415
+ * Shape of type resolution result: an expression type or reference to a declaration
1416
+ */
1417
+ type ResolvedShape = ExpressionType | AbstractDeclaration;
1418
+ /**
1419
+ * Resolved type information (attached to expressions by linker)
1420
+ */
1421
+ type ResolvedType = {
1422
+ decl?: ResolvedShape;
1423
+ array?: boolean;
1424
+ nullable?: boolean;
1425
+ };
1426
+ declare const BinaryExprOperatorPriority: Record<BinaryExpr['operator'], number>;
1427
+ interface InheritableNode extends AstNode {
1428
+ $inheritedFrom?: DataModel;
1429
+ }
1430
+ declare module 'langium' {
1431
+ interface AstNode {
1432
+ /**
1433
+ * Resolved type information attached to expressions
1434
+ */
1435
+ $resolvedType?: ResolvedType;
1436
+ }
1437
+ }
1438
+ //#endregion
1439
+ export { ReferenceArg as $, isModel as $t, Enum as A, isConfigField as At, InvocationExpr as B, isEnumField as Bt, ConfigInvocationExpr as C, isBinaryExpr as Ct, DataModel as D, isCollectionPredicateBinding as Dt, DataFieldType as E, isBuiltinType as Et, FunctionDecl as F, isDataFieldType as Ft, ModelImport as G, isFunctionParam as Gt, MemberAccessExpr as H, isExpressionType as Ht, FunctionParam as I, isDataModel as It, ObjectExpr as J, isInternalAttribute as Jt, NullExpr as K, isFunctionParamType as Kt, FunctionParamType as L, isDataModelAttribute as Lt, Expression as M, isConfigInvocationExpr as Mt, ExpressionType as N, isDataField as Nt, DataModelAttribute as O, isConfigArrayExpr as Ot, FieldInitializer as P, isDataFieldAttribute as Pt, ProcedureParam as Q, isMemberAccessTarget as Qt, GeneratorDecl as R, isDataSource as Rt, ConfigInvocationArg as S, isAttributeParamType as St, DataFieldAttribute as T, isBooleanLiteral as Tt, MemberAccessTarget as U, isFieldInitializer as Ut, LiteralExpr as V, isExpression as Vt, Model as W, isFunctionDecl as Wt, PluginField as X, isLiteralExpr as Xt, Plugin as Y, isInvocationExpr as Yt, Procedure as Z, isMemberAccessExpr as Zt, BuiltinType as _, isUnaryExpr as _n, isArgument as _t, ResolvedShape as a, isPluginField as an, ThisExpr as at, ConfigExpr as b, isAttributeArg as bt, Argument as c, isReferenceArg as cn, UnaryExpr as ct, AttributeArg as d, isRegularID as dn, ZModelAstType as dt, isModelImport as en, ReferenceExpr as et, AttributeParam as f, isRegularIDWithTypeNames as fn, ZModelKeywordNames as ft, BooleanLiteral as g, isTypeDef as gn, isAbstractDeclaration as gt, Boolean as h, isTypeDeclaration as hn, ZModelTokenNames as ht, Reference$1 as i, isPlugin as in, StringLiteral as it, EnumField as j, isConfigInvocationArg as jt, DataSource as k, isConfigExpr as kt, ArrayExpr as l, isReferenceExpr as ln, UnsupportedFieldType as lt, BinaryExpr as m, isThisExpr as mn, ZModelTerminals as mt, BinaryExprOperatorPriority as n, isNumberLiteral as nn, RegularID as nt, ResolvedType as o, isProcedure as on, TypeDeclaration as ot, AttributeParamType as p, isStringLiteral as pn, ZModelTerminalNames as pt, NumberLiteral as q, isGeneratorDecl as qt, InheritableNode as r, isObjectExpr as rn, RegularIDWithTypeNames as rt, AbstractDeclaration as s, isProcedureParam as sn, TypeDef as st, AstNode$1 as t, isNullExpr as tn, ReferenceTarget as tt, Attribute as u, isReferenceTarget as un, ZModelAstReflection as ut, CollectionPredicateBinding as v, isUnsupportedFieldType as vn, isArrayExpr as vt, DataField as w, isBoolean as wt, ConfigField as x, isAttributeParam as xt, ConfigArrayExpr as y, reflection as yn, isAttribute as yt, InternalAttribute as z, isEnum as zt };
1440
+ //# sourceMappingURL=ast-DhPyAQoX.d.mts.map