@domainlang/language 0.12.0 → 0.13.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 (90) hide show
  1. package/out/ast-augmentation.d.ts +7 -2
  2. package/out/diagram/context-map-diagram-generator.d.ts +9 -2
  3. package/out/diagram/context-map-diagram-generator.js +112 -63
  4. package/out/diagram/context-map-diagram-generator.js.map +1 -1
  5. package/out/generated/ast.d.ts +323 -51
  6. package/out/generated/ast.js +194 -33
  7. package/out/generated/ast.js.map +1 -1
  8. package/out/generated/grammar.js +418 -172
  9. package/out/generated/grammar.js.map +1 -1
  10. package/out/lsp/domain-lang-completion.js +39 -15
  11. package/out/lsp/domain-lang-completion.js.map +1 -1
  12. package/out/lsp/domain-lang-formatter.js +32 -0
  13. package/out/lsp/domain-lang-formatter.js.map +1 -1
  14. package/out/lsp/domain-lang-index-manager.d.ts +2 -3
  15. package/out/lsp/domain-lang-index-manager.js +5 -8
  16. package/out/lsp/domain-lang-index-manager.js.map +1 -1
  17. package/out/lsp/domain-lang-workspace-manager.d.ts +1 -1
  18. package/out/lsp/domain-lang-workspace-manager.js +2 -26
  19. package/out/lsp/domain-lang-workspace-manager.js.map +1 -1
  20. package/out/lsp/explain.js +9 -3
  21. package/out/lsp/explain.js.map +1 -1
  22. package/out/lsp/hover/domain-lang-hover.js +13 -11
  23. package/out/lsp/hover/domain-lang-hover.js.map +1 -1
  24. package/out/lsp/hover/domain-lang-keywords.js +29 -26
  25. package/out/lsp/hover/domain-lang-keywords.js.map +1 -1
  26. package/out/sdk/ast-augmentation.d.ts +29 -21
  27. package/out/sdk/ast-augmentation.js +11 -7
  28. package/out/sdk/ast-augmentation.js.map +1 -1
  29. package/out/sdk/index.d.ts +2 -2
  30. package/out/sdk/index.js +1 -1
  31. package/out/sdk/index.js.map +1 -1
  32. package/out/sdk/loader-node.js +2 -2
  33. package/out/sdk/loader-node.js.map +1 -1
  34. package/out/sdk/patterns.d.ts +50 -61
  35. package/out/sdk/patterns.js +92 -62
  36. package/out/sdk/patterns.js.map +1 -1
  37. package/out/sdk/query.js +54 -43
  38. package/out/sdk/query.js.map +1 -1
  39. package/out/sdk/serializers.js +20 -7
  40. package/out/sdk/serializers.js.map +1 -1
  41. package/out/sdk/types.d.ts +87 -18
  42. package/out/sdk/types.js.map +1 -1
  43. package/out/sdk/validator.js +48 -64
  44. package/out/sdk/validator.js.map +1 -1
  45. package/out/services/performance-optimizer.d.ts +3 -3
  46. package/out/services/performance-optimizer.js +1 -3
  47. package/out/services/performance-optimizer.js.map +1 -1
  48. package/out/services/relationship-inference.d.ts +4 -4
  49. package/out/services/relationship-inference.js +34 -46
  50. package/out/services/relationship-inference.js.map +1 -1
  51. package/out/syntaxes/domain-lang.monarch.js +1 -1
  52. package/out/syntaxes/domain-lang.monarch.js.map +1 -1
  53. package/out/utils/import-utils.d.ts +6 -20
  54. package/out/utils/import-utils.js +3 -63
  55. package/out/utils/import-utils.js.map +1 -1
  56. package/out/validation/constants.d.ts +23 -6
  57. package/out/validation/constants.js +24 -7
  58. package/out/validation/constants.js.map +1 -1
  59. package/out/validation/maps.js +10 -4
  60. package/out/validation/maps.js.map +1 -1
  61. package/out/validation/relationships.d.ts +4 -8
  62. package/out/validation/relationships.js +96 -48
  63. package/out/validation/relationships.js.map +1 -1
  64. package/package.json +1 -1
  65. package/src/ast-augmentation.ts +7 -2
  66. package/src/diagram/context-map-diagram-generator.ts +132 -70
  67. package/src/domain-lang.langium +62 -26
  68. package/src/generated/ast.ts +413 -63
  69. package/src/generated/grammar.ts +418 -172
  70. package/src/lsp/domain-lang-completion.ts +42 -15
  71. package/src/lsp/domain-lang-formatter.ts +34 -0
  72. package/src/lsp/domain-lang-index-manager.ts +6 -9
  73. package/src/lsp/domain-lang-workspace-manager.ts +3 -29
  74. package/src/lsp/explain.ts +10 -2
  75. package/src/lsp/hover/domain-lang-hover.ts +10 -8
  76. package/src/lsp/hover/domain-lang-keywords.ts +27 -24
  77. package/src/sdk/ast-augmentation.ts +30 -21
  78. package/src/sdk/index.ts +11 -1
  79. package/src/sdk/loader-node.ts +2 -2
  80. package/src/sdk/patterns.ts +114 -76
  81. package/src/sdk/query.ts +57 -48
  82. package/src/sdk/serializers.ts +20 -7
  83. package/src/sdk/types.ts +92 -17
  84. package/src/sdk/validator.ts +52 -69
  85. package/src/services/performance-optimizer.ts +4 -6
  86. package/src/services/relationship-inference.ts +43 -54
  87. package/src/utils/import-utils.ts +9 -74
  88. package/src/validation/constants.ts +32 -9
  89. package/src/validation/maps.ts +12 -4
  90. package/src/validation/relationships.ts +150 -71
@@ -11,7 +11,7 @@ export declare const DomainLangTerminals: {
11
11
  SL_COMMENT: RegExp;
12
12
  };
13
13
  export type DomainLangTerminalNames = keyof typeof DomainLangTerminals;
14
- export type DomainLangKeywordNames = "," | "->" | "." | ":" | "<-" | "<->" | "=" | "><" | "ACL" | "AntiCorruptionLayer" | "BBoM" | "BigBallOfMud" | "BoundedContext" | "CF" | "Classification" | "Conformist" | "ContextMap" | "CustomerSupplier" | "Decision" | "Domain" | "DomainMap" | "Import" | "Metadata" | "Namespace" | "OHS" | "OpenHostService" | "P" | "PL" | "Partnership" | "Policy" | "PublishedLanguage" | "Rule" | "SK" | "SeparateWays" | "SharedKernel" | "Team" | "Term" | "UpstreamDownstream" | "[" | "]" | "aka" | "archetype" | "as" | "bc" | "businessModel" | "by" | "classification" | "cmap" | "contains" | "decision" | "decisions" | "description" | "dmap" | "dom" | "evolution" | "examples" | "for" | "glossary" | "import" | "in" | "integrations" | "is" | "meta" | "metadata" | "ns" | "policy" | "relationships" | "rule" | "rules" | "synonyms" | "team" | "term" | "terminology" | "this" | "type" | "vision" | "{" | "}";
14
+ export type DomainLangKeywordNames = "," | "->" | "." | ":" | "<-" | "<->" | "=" | "><" | "ACL" | "AntiCorruptionLayer" | "BBoM" | "BigBallOfMud" | "BoundedContext" | "C" | "CF" | "Classification" | "Conformist" | "ContextMap" | "Customer" | "Decision" | "Domain" | "DomainMap" | "Import" | "Metadata" | "Namespace" | "OHS" | "OpenHostService" | "P" | "PL" | "Partnership" | "Policy" | "PublishedLanguage" | "Rule" | "S" | "SK" | "SW" | "SeparateWays" | "SharedKernel" | "Supplier" | "Team" | "Term" | "[" | "]" | "aka" | "archetype" | "as" | "bc" | "businessModel" | "by" | "classification" | "cmap" | "contains" | "decision" | "decisions" | "description" | "dmap" | "dom" | "evolution" | "examples" | "for" | "glossary" | "import" | "in" | "integrations" | "is" | "meta" | "metadata" | "ns" | "policy" | "relationships" | "rule" | "rules" | "synonyms" | "team" | "term" | "terminology" | "this" | "type" | "vision" | "{" | "}";
15
15
  export type DomainLangTokenNames = DomainLangTerminalNames | DomainLangKeywordNames;
16
16
  /**
17
17
  * Decisions, Policies, and Business Rules.
@@ -24,11 +24,37 @@ export declare const AbstractDecision: {
24
24
  readonly $type: "AbstractDecision";
25
25
  };
26
26
  export declare function isAbstractDecision(item: unknown): item is AbstractDecision;
27
+ /**
28
+ * DDD Side Patterns - describe one side's role in a directional relationship.
29
+ * Each pattern produces a distinct AST node type via {infer} actions.
30
+ * Short and long forms parse to the same node type.
31
+ */
32
+ export interface AntiCorruptionLayer extends langium.AstNode {
33
+ readonly $container: DirectionalRelationship;
34
+ readonly $type: 'AntiCorruptionLayer';
35
+ }
36
+ export declare const AntiCorruptionLayer: {
37
+ readonly $type: "AntiCorruptionLayer";
38
+ };
39
+ export declare function isAntiCorruptionLayer(item: unknown): item is AntiCorruptionLayer;
27
40
  /**
28
41
  * Assignment operators - flexible syntax.
29
42
  */
30
43
  export type Assignment = ':' | '=' | 'is';
31
44
  export declare function isAssignment(item: unknown): item is Assignment;
45
+ /**
46
+ * DDD Side Patterns - describe one side's role in a directional relationship.
47
+ * Each pattern produces a distinct AST node type via {infer} actions.
48
+ * Short and long forms parse to the same node type.
49
+ */
50
+ export interface BigBallOfMud extends langium.AstNode {
51
+ readonly $container: DirectionalRelationship;
52
+ readonly $type: 'BigBallOfMud';
53
+ }
54
+ export declare const BigBallOfMud: {
55
+ readonly $type: "BigBallOfMud";
56
+ };
57
+ export declare function isBigBallOfMud(item: unknown): item is BigBallOfMud;
32
58
  /**
33
59
  * Bounded Context - A boundary within which a domain model is defined.
34
60
  * Central pattern in DDD for managing complexity and team boundaries.
@@ -114,6 +140,19 @@ export declare const Classification: {
114
140
  readonly name: "name";
115
141
  };
116
142
  export declare function isClassification(item: unknown): item is Classification;
143
+ /**
144
+ * DDD Side Patterns - describe one side's role in a directional relationship.
145
+ * Each pattern produces a distinct AST node type via {infer} actions.
146
+ * Short and long forms parse to the same node type.
147
+ */
148
+ export interface Conformist extends langium.AstNode {
149
+ readonly $container: DirectionalRelationship;
150
+ readonly $type: 'Conformist';
151
+ }
152
+ export declare const Conformist: {
153
+ readonly $type: "Conformist";
154
+ };
155
+ export declare function isConformist(item: unknown): item is Conformist;
117
156
  export type Container = Model | NamespaceDeclaration;
118
157
  export declare const Container: {
119
158
  readonly $type: "Container";
@@ -139,6 +178,19 @@ export declare const ContextMap: {
139
178
  readonly relationships: "relationships";
140
179
  };
141
180
  export declare function isContextMap(item: unknown): item is ContextMap;
181
+ /**
182
+ * DDD Side Patterns - describe one side's role in a directional relationship.
183
+ * Each pattern produces a distinct AST node type via {infer} actions.
184
+ * Short and long forms parse to the same node type.
185
+ */
186
+ export interface Customer extends langium.AstNode {
187
+ readonly $container: DirectionalRelationship;
188
+ readonly $type: 'Customer';
189
+ }
190
+ export declare const Customer: {
191
+ readonly $type: "Customer";
192
+ };
193
+ export declare function isCustomer(item: unknown): item is Customer;
142
194
  export interface Decision extends langium.AstNode {
143
195
  readonly $container: BoundedContext;
144
196
  readonly $type: 'Assignment' | 'Decision';
@@ -153,6 +205,43 @@ export declare const Decision: {
153
205
  readonly value: "value";
154
206
  };
155
207
  export declare function isDecision(item: unknown): item is Decision;
208
+ /**
209
+ * Directional relationship arrows.
210
+ *
211
+ * Arrow semantics:
212
+ * -> Upstream to downstream (left provides, right consumes)
213
+ * <- Downstream to upstream (right provides, left consumes)
214
+ * <-> Bidirectional (mutual data flow with explicit patterns)
215
+ */
216
+ export type DirectionalArrow = '->' | '<-' | '<->';
217
+ export declare function isDirectionalArrow(item: unknown): item is DirectionalArrow;
218
+ /**
219
+ * Directional relationship - upstream/downstream with optional side patterns.
220
+ *
221
+ * Examples:
222
+ * Orders [OHS] -> [CF] Payments
223
+ * Orders [S] -> [C] Payments
224
+ * Orders -> Payments
225
+ * Orders [OHS] <-> [CF] Payments
226
+ */
227
+ export interface DirectionalRelationship extends langium.AstNode {
228
+ readonly $container: BoundedContext | ContextMap;
229
+ readonly $type: 'DirectionalRelationship';
230
+ arrow: DirectionalArrow;
231
+ left: BoundedContextRef;
232
+ leftPatterns: Array<SidePattern>;
233
+ right: BoundedContextRef;
234
+ rightPatterns: Array<SidePattern>;
235
+ }
236
+ export declare const DirectionalRelationship: {
237
+ readonly $type: "DirectionalRelationship";
238
+ readonly arrow: "arrow";
239
+ readonly left: "left";
240
+ readonly leftPatterns: "leftPatterns";
241
+ readonly right: "right";
242
+ readonly rightPatterns: "rightPatterns";
243
+ };
244
+ export declare function isDirectionalRelationship(item: unknown): item is DirectionalRelationship;
156
245
  /**
157
246
  * Domain - A sphere of knowledge or activity in DDD.
158
247
  * Can be nested via `in` to show subdomain hierarchy.
@@ -244,11 +333,6 @@ export declare const ImportStatement: {
244
333
  readonly uri: "uri";
245
334
  };
246
335
  export declare function isImportStatement(item: unknown): item is ImportStatement;
247
- /**
248
- * DDD Integration Patterns (used in relationships).
249
- */
250
- export type IntegrationPattern = 'ACL' | 'AntiCorruptionLayer' | 'BBoM' | 'BigBallOfMud' | 'CF' | 'Conformist' | 'OHS' | 'OpenHostService' | 'P' | 'PL' | 'Partnership' | 'PublishedLanguage' | 'SK' | 'SharedKernel';
251
- export declare function isIntegrationPattern(item: unknown): item is IntegrationPattern;
252
336
  /**
253
337
  * Metadata - Defines a key that can be used in metadata blocks.
254
338
  * Examples: Language, Framework, Database, Repository.
@@ -319,6 +403,31 @@ export declare const ObjectMap: {
319
403
  readonly $type: "ObjectMap";
320
404
  };
321
405
  export declare function isObjectMap(item: unknown): item is ObjectMap;
406
+ /**
407
+ * DDD Side Patterns - describe one side's role in a directional relationship.
408
+ * Each pattern produces a distinct AST node type via {infer} actions.
409
+ * Short and long forms parse to the same node type.
410
+ */
411
+ export interface OpenHostService extends langium.AstNode {
412
+ readonly $container: DirectionalRelationship;
413
+ readonly $type: 'OpenHostService';
414
+ }
415
+ export declare const OpenHostService: {
416
+ readonly $type: "OpenHostService";
417
+ };
418
+ export declare function isOpenHostService(item: unknown): item is OpenHostService;
419
+ /**
420
+ * DDD Symmetric Patterns - describe the relationship between two contexts.
421
+ * These are mutual/shared patterns, not directional.
422
+ */
423
+ export interface Partnership extends langium.AstNode {
424
+ readonly $container: SymmetricRelationship;
425
+ readonly $type: 'Partnership';
426
+ }
427
+ export declare const Partnership: {
428
+ readonly $type: "Partnership";
429
+ };
430
+ export declare function isPartnership(item: unknown): item is Partnership;
322
431
  export interface Policy extends langium.AstNode {
323
432
  readonly $container: BoundedContext;
324
433
  readonly $type: 'Assignment' | 'Policy';
@@ -333,6 +442,19 @@ export declare const Policy: {
333
442
  readonly value: "value";
334
443
  };
335
444
  export declare function isPolicy(item: unknown): item is Policy;
445
+ /**
446
+ * DDD Side Patterns - describe one side's role in a directional relationship.
447
+ * Each pattern produces a distinct AST node type via {infer} actions.
448
+ * Short and long forms parse to the same node type.
449
+ */
450
+ export interface PublishedLanguage extends langium.AstNode {
451
+ readonly $container: DirectionalRelationship;
452
+ readonly $type: 'PublishedLanguage';
453
+ }
454
+ export declare const PublishedLanguage: {
455
+ readonly $type: "PublishedLanguage";
456
+ };
457
+ export declare function isPublishedLanguage(item: unknown): item is PublishedLanguage;
336
458
  /**
337
459
  * Qualified Name - Hierarchical namespacing with dots.
338
460
  */
@@ -340,46 +462,55 @@ export type QualifiedName = string;
340
462
  export declare function isQualifiedName(item: unknown): item is QualifiedName;
341
463
  /**
342
464
  * Relationship - Connection between two Bounded Contexts.
343
- * Supports DDD integration patterns (ACL, OHS, PL, etc.) and relationship types.
465
+ * Uses entity–relationship–entity structure where the relationship expression
466
+ * (type, arrow, side annotations) sits between the two entity references.
467
+ *
468
+ * Forms:
469
+ * Directional: Orders [OHS] -> [CF] Payments
470
+ * Symmetric: CardManagement [SK] AccountManagement
471
+ * Separate Ways arrow: Orders >< Payments
344
472
  *
345
473
  * [Read more on domainlang.net](https://domainlang.net/reference/language#relationships)
346
474
  */
347
- export interface Relationship extends langium.AstNode {
348
- readonly $container: BoundedContext | ContextMap;
349
- readonly $type: 'Assignment' | 'Relationship';
350
- arrow: RelationshipArrow;
351
- left: BoundedContextRef;
352
- leftPatterns: Array<IntegrationPattern>;
353
- right: BoundedContextRef;
354
- rightPatterns: Array<IntegrationPattern>;
355
- type?: RelationshipType;
356
- }
475
+ export type Relationship = DirectionalRelationship | SymmetricRelationship;
357
476
  export declare const Relationship: {
358
477
  readonly $type: "Relationship";
359
- readonly arrow: "arrow";
360
- readonly left: "left";
361
- readonly leftPatterns: "leftPatterns";
362
- readonly right: "right";
363
- readonly rightPatterns: "rightPatterns";
364
- readonly type: "type";
365
478
  };
366
479
  export declare function isRelationship(item: unknown): item is Relationship;
367
480
  /**
368
- * Relationship arrows - symbolic and named types.
369
- *
370
- * Arrow semantics:
371
- * -> Upstream to downstream (left provides, right consumes)
372
- * <- Downstream to upstream (right provides, left consumes)
373
- * <-> Bidirectional/Partnership (mutual dependency)
374
- * >< Separate Ways (no integration, teams go their own way)
481
+ * DDD Symmetric Patterns - describe the relationship between two contexts.
482
+ * These are mutual/shared patterns, not directional.
483
+ */
484
+ export interface SeparateWays extends langium.AstNode {
485
+ readonly $container: SymmetricRelationship;
486
+ readonly $type: 'SeparateWays';
487
+ }
488
+ export declare const SeparateWays: {
489
+ readonly $type: "SeparateWays";
490
+ };
491
+ export declare function isSeparateWays(item: unknown): item is SeparateWays;
492
+ /**
493
+ * DDD Symmetric Patterns - describe the relationship between two contexts.
494
+ * These are mutual/shared patterns, not directional.
375
495
  */
376
- export type RelationshipArrow = '->' | '<-' | '<->' | '><';
377
- export declare function isRelationshipArrow(item: unknown): item is RelationshipArrow;
496
+ export interface SharedKernel extends langium.AstNode {
497
+ readonly $container: SymmetricRelationship;
498
+ readonly $type: 'SharedKernel';
499
+ }
500
+ export declare const SharedKernel: {
501
+ readonly $type: "SharedKernel";
502
+ };
503
+ export declare function isSharedKernel(item: unknown): item is SharedKernel;
378
504
  /**
379
- * DDD Relationship Types.
505
+ * DDD Side Patterns - describe one side's role in a directional relationship.
506
+ * Each pattern produces a distinct AST node type via {infer} actions.
507
+ * Short and long forms parse to the same node type.
380
508
  */
381
- export type RelationshipType = 'CustomerSupplier' | 'Partnership' | 'SeparateWays' | 'SharedKernel' | 'UpstreamDownstream';
382
- export declare function isRelationshipType(item: unknown): item is RelationshipType;
509
+ export type SidePattern = AntiCorruptionLayer | BigBallOfMud | Conformist | Customer | OpenHostService | PublishedLanguage | Supplier;
510
+ export declare const SidePattern: {
511
+ readonly $type: "SidePattern";
512
+ };
513
+ export declare function isSidePattern(item: unknown): item is SidePattern;
383
514
  /**
384
515
  * Top-level elements that can appear in the model.
385
516
  * Unifies all major DDD constructs for flexible ordering.
@@ -389,6 +520,53 @@ export declare const StructureElement: {
389
520
  readonly $type: "StructureElement";
390
521
  };
391
522
  export declare function isStructureElement(item: unknown): item is StructureElement;
523
+ /**
524
+ * DDD Side Patterns - describe one side's role in a directional relationship.
525
+ * Each pattern produces a distinct AST node type via {infer} actions.
526
+ * Short and long forms parse to the same node type.
527
+ */
528
+ export interface Supplier extends langium.AstNode {
529
+ readonly $container: DirectionalRelationship;
530
+ readonly $type: 'Supplier';
531
+ }
532
+ export declare const Supplier: {
533
+ readonly $type: "Supplier";
534
+ };
535
+ export declare function isSupplier(item: unknown): item is Supplier;
536
+ /**
537
+ * DDD Symmetric Patterns - describe the relationship between two contexts.
538
+ * These are mutual/shared patterns, not directional.
539
+ */
540
+ export type SymmetricPattern = Partnership | SeparateWays | SharedKernel;
541
+ export declare const SymmetricPattern: {
542
+ readonly $type: "SymmetricPattern";
543
+ };
544
+ export declare function isSymmetricPattern(item: unknown): item is SymmetricPattern;
545
+ /**
546
+ * Symmetric relationship - mutual pattern between two contexts, no directionality.
547
+ *
548
+ * Examples:
549
+ * CardManagement [SK] AccountManagement
550
+ * Orders [P] Payments
551
+ * Orders >< Payments
552
+ * Orders [SW] Payments
553
+ */
554
+ export interface SymmetricRelationship extends langium.AstNode {
555
+ readonly $container: BoundedContext | ContextMap;
556
+ readonly $type: 'SymmetricRelationship';
557
+ arrow?: '><';
558
+ left: BoundedContextRef;
559
+ pattern?: SymmetricPattern;
560
+ right: BoundedContextRef;
561
+ }
562
+ export declare const SymmetricRelationship: {
563
+ readonly $type: "SymmetricRelationship";
564
+ readonly arrow: "arrow";
565
+ readonly left: "left";
566
+ readonly pattern: "pattern";
567
+ readonly right: "right";
568
+ };
569
+ export declare function isSymmetricRelationship(item: unknown): item is SymmetricRelationship;
392
570
  /**
393
571
  * Team - People responsible for a Bounded Context or Domain.
394
572
  * Represents organizational boundaries in DDD.
@@ -426,13 +604,18 @@ export declare const Type: {
426
604
  export declare function isType(item: unknown): item is Type;
427
605
  export type DomainLangAstType = {
428
606
  AbstractDecision: AbstractDecision;
607
+ AntiCorruptionLayer: AntiCorruptionLayer;
608
+ BigBallOfMud: BigBallOfMud;
429
609
  BoundedContext: BoundedContext;
430
610
  BoundedContextRef: BoundedContextRef;
431
611
  BusinessRule: BusinessRule;
432
612
  Classification: Classification;
613
+ Conformist: Conformist;
433
614
  Container: Container;
434
615
  ContextMap: ContextMap;
616
+ Customer: Customer;
435
617
  Decision: Decision;
618
+ DirectionalRelationship: DirectionalRelationship;
436
619
  Domain: Domain;
437
620
  DomainMap: DomainMap;
438
621
  DomainTerm: DomainTerm;
@@ -442,9 +625,18 @@ export type DomainLangAstType = {
442
625
  Model: Model;
443
626
  NamespaceDeclaration: NamespaceDeclaration;
444
627
  ObjectMap: ObjectMap;
628
+ OpenHostService: OpenHostService;
629
+ Partnership: Partnership;
445
630
  Policy: Policy;
631
+ PublishedLanguage: PublishedLanguage;
446
632
  Relationship: Relationship;
633
+ SeparateWays: SeparateWays;
634
+ SharedKernel: SharedKernel;
635
+ SidePattern: SidePattern;
447
636
  StructureElement: StructureElement;
637
+ Supplier: Supplier;
638
+ SymmetricPattern: SymmetricPattern;
639
+ SymmetricRelationship: SymmetricRelationship;
448
640
  Team: Team;
449
641
  ThisRef: ThisRef;
450
642
  Type: Type;
@@ -456,6 +648,16 @@ export declare class DomainLangAstReflection extends langium.AbstractAstReflecti
456
648
  readonly properties: {};
457
649
  readonly superTypes: [];
458
650
  };
651
+ readonly AntiCorruptionLayer: {
652
+ readonly name: "AntiCorruptionLayer";
653
+ readonly properties: {};
654
+ readonly superTypes: ["SidePattern"];
655
+ };
656
+ readonly BigBallOfMud: {
657
+ readonly name: "BigBallOfMud";
658
+ readonly properties: {};
659
+ readonly superTypes: ["SidePattern"];
660
+ };
459
661
  readonly BoundedContext: {
460
662
  readonly name: "BoundedContext";
461
663
  readonly properties: {
@@ -545,6 +747,11 @@ export declare class DomainLangAstReflection extends langium.AbstractAstReflecti
545
747
  };
546
748
  readonly superTypes: ["Type"];
547
749
  };
750
+ readonly Conformist: {
751
+ readonly name: "Conformist";
752
+ readonly properties: {};
753
+ readonly superTypes: ["SidePattern"];
754
+ };
548
755
  readonly Container: {
549
756
  readonly name: "Container";
550
757
  readonly properties: {};
@@ -568,6 +775,11 @@ export declare class DomainLangAstReflection extends langium.AbstractAstReflecti
568
775
  };
569
776
  readonly superTypes: ["ObjectMap"];
570
777
  };
778
+ readonly Customer: {
779
+ readonly name: "Customer";
780
+ readonly properties: {};
781
+ readonly superTypes: ["SidePattern"];
782
+ };
571
783
  readonly Decision: {
572
784
  readonly name: "Decision";
573
785
  readonly properties: {
@@ -584,6 +796,29 @@ export declare class DomainLangAstReflection extends langium.AbstractAstReflecti
584
796
  };
585
797
  readonly superTypes: ["AbstractDecision"];
586
798
  };
799
+ readonly DirectionalRelationship: {
800
+ readonly name: "DirectionalRelationship";
801
+ readonly properties: {
802
+ readonly arrow: {
803
+ readonly name: "arrow";
804
+ };
805
+ readonly left: {
806
+ readonly name: "left";
807
+ };
808
+ readonly leftPatterns: {
809
+ readonly name: "leftPatterns";
810
+ readonly defaultValue: [];
811
+ };
812
+ readonly right: {
813
+ readonly name: "right";
814
+ };
815
+ readonly rightPatterns: {
816
+ readonly name: "rightPatterns";
817
+ readonly defaultValue: [];
818
+ };
819
+ };
820
+ readonly superTypes: ["Relationship"];
821
+ };
587
822
  readonly Domain: {
588
823
  readonly name: "Domain";
589
824
  readonly properties: {
@@ -707,6 +942,16 @@ export declare class DomainLangAstReflection extends langium.AbstractAstReflecti
707
942
  readonly properties: {};
708
943
  readonly superTypes: ["StructureElement"];
709
944
  };
945
+ readonly OpenHostService: {
946
+ readonly name: "OpenHostService";
947
+ readonly properties: {};
948
+ readonly superTypes: ["SidePattern"];
949
+ };
950
+ readonly Partnership: {
951
+ readonly name: "Partnership";
952
+ readonly properties: {};
953
+ readonly superTypes: ["SymmetricPattern"];
954
+ };
710
955
  readonly Policy: {
711
956
  readonly name: "Policy";
712
957
  readonly properties: {
@@ -723,8 +968,48 @@ export declare class DomainLangAstReflection extends langium.AbstractAstReflecti
723
968
  };
724
969
  readonly superTypes: ["AbstractDecision"];
725
970
  };
971
+ readonly PublishedLanguage: {
972
+ readonly name: "PublishedLanguage";
973
+ readonly properties: {};
974
+ readonly superTypes: ["SidePattern"];
975
+ };
726
976
  readonly Relationship: {
727
977
  readonly name: "Relationship";
978
+ readonly properties: {};
979
+ readonly superTypes: [];
980
+ };
981
+ readonly SeparateWays: {
982
+ readonly name: "SeparateWays";
983
+ readonly properties: {};
984
+ readonly superTypes: ["SymmetricPattern"];
985
+ };
986
+ readonly SharedKernel: {
987
+ readonly name: "SharedKernel";
988
+ readonly properties: {};
989
+ readonly superTypes: ["SymmetricPattern"];
990
+ };
991
+ readonly SidePattern: {
992
+ readonly name: "SidePattern";
993
+ readonly properties: {};
994
+ readonly superTypes: [];
995
+ };
996
+ readonly StructureElement: {
997
+ readonly name: "StructureElement";
998
+ readonly properties: {};
999
+ readonly superTypes: [];
1000
+ };
1001
+ readonly Supplier: {
1002
+ readonly name: "Supplier";
1003
+ readonly properties: {};
1004
+ readonly superTypes: ["SidePattern"];
1005
+ };
1006
+ readonly SymmetricPattern: {
1007
+ readonly name: "SymmetricPattern";
1008
+ readonly properties: {};
1009
+ readonly superTypes: [];
1010
+ };
1011
+ readonly SymmetricRelationship: {
1012
+ readonly name: "SymmetricRelationship";
728
1013
  readonly properties: {
729
1014
  readonly arrow: {
730
1015
  readonly name: "arrow";
@@ -732,27 +1017,14 @@ export declare class DomainLangAstReflection extends langium.AbstractAstReflecti
732
1017
  readonly left: {
733
1018
  readonly name: "left";
734
1019
  };
735
- readonly leftPatterns: {
736
- readonly name: "leftPatterns";
737
- readonly defaultValue: [];
1020
+ readonly pattern: {
1021
+ readonly name: "pattern";
738
1022
  };
739
1023
  readonly right: {
740
1024
  readonly name: "right";
741
1025
  };
742
- readonly rightPatterns: {
743
- readonly name: "rightPatterns";
744
- readonly defaultValue: [];
745
- };
746
- readonly type: {
747
- readonly name: "type";
748
- };
749
1026
  };
750
- readonly superTypes: [];
751
- };
752
- readonly StructureElement: {
753
- readonly name: "StructureElement";
754
- readonly properties: {};
755
- readonly superTypes: [];
1027
+ readonly superTypes: ["Relationship"];
756
1028
  };
757
1029
  readonly Team: {
758
1030
  readonly name: "Team";