@eventcatalog/language-server 0.1.0 → 0.2.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.
package/SPEC.md CHANGED
@@ -758,7 +758,7 @@ _Removed from V1. May be added in a future version._
758
758
 
759
759
  # User
760
760
 
761
- A user definition for ownership and team membership.
761
+ A user definition for team members.
762
762
 
763
763
  ```
764
764
  user <id> {
@@ -768,16 +768,6 @@ user <id> {
768
768
  email "<email>"
769
769
  slack "<url>"
770
770
  ms-teams "<url>"
771
-
772
- // Team membership
773
- team <team-id>
774
-
775
- // Ownership declarations
776
- owns domain <id>
777
- owns service <id>
778
- owns event <id>
779
- owns command <id>
780
- owns query <id>
781
771
  }
782
772
  ```
783
773
 
@@ -789,9 +779,6 @@ user dboyne {
789
779
  avatar "https://avatars.githubusercontent.com/u/3268013"
790
780
  role "Principal Engineer"
791
781
  email "david@company.com"
792
-
793
- owns domain Payment
794
- owns service PaymentService
795
782
  }
796
783
  ```
797
784
 
@@ -804,11 +791,7 @@ user_props = "name" string_lit
804
791
  | "role" string_lit
805
792
  | "email" string_lit
806
793
  | "slack" string_lit
807
- | "ms-teams" string_lit
808
- | owns_stmt
809
- | "team" identifier ;
810
- owns_stmt = "owns" resource_type_kw identifier ;
811
- resource_type_kw = "domain" | "service" | "event" | "command" | "query" ;
794
+ | "ms-teams" string_lit ;
812
795
  ```
813
796
 
814
797
  ---
@@ -820,6 +803,8 @@ A team definition for ownership and membership.
820
803
  ```
821
804
  team <id> {
822
805
  name "<display name>"
806
+ avatar "<url>"
807
+ role "<role>"
823
808
  summary "<text>"
824
809
  email "<email>"
825
810
  slack "<url>"
@@ -827,13 +812,6 @@ team <id> {
827
812
 
828
813
  // Members
829
814
  member <user-id> // repeatable
830
-
831
- // Ownership declarations
832
- owns domain <id>
833
- owns service <id>
834
- owns event <id>
835
- owns command <id>
836
- owns query <id>
837
815
  }
838
816
  ```
839
817
 
@@ -854,6 +832,8 @@ service OrderService {
854
832
  ```
855
833
  team orders-team {
856
834
  name "Orders Team"
835
+ avatar "https://example.com/orders-team.png"
836
+ role "Platform Engineering"
857
837
  summary "Responsible for order lifecycle"
858
838
  email "orders@company.com"
859
839
  slack "https://company.slack.com/channels/orders"
@@ -868,12 +848,13 @@ team orders-team {
868
848
  ```ebnf
869
849
  team_decl = "team" identifier "{" team_props "}" ;
870
850
  team_props = "name" string_lit
851
+ | "avatar" string_lit
852
+ | "role" string_lit
871
853
  | "summary" string_lit
872
854
  | "email" string_lit
873
855
  | "slack" string_lit
874
856
  | "ms-teams" string_lit
875
- | "member" identifier
876
- | owns_stmt ;
857
+ | "member" identifier ;
877
858
  ```
878
859
 
879
860
  ---
package/dist/compiler.js CHANGED
@@ -285,12 +285,20 @@ function makeOutput(path, fm, body) {
285
285
  const content = body ? `${frontmatter}\n${body}\n` : `${frontmatter}\n`;
286
286
  return { path, content };
287
287
  }
288
+ // Build a versioned output path: "<folder>/<name>/versioned/<version>/index.md"
289
+ // Falls back to "<folder>/<name>/index.md" when no version is present.
290
+ function versionedPath(folder, name, body) {
291
+ const version = getVersion(body);
292
+ if (version)
293
+ return `${folder}/${name}/versioned/${version}/index.md`;
294
+ return `${folder}/${name}/index.md`;
295
+ }
288
296
  // --- Resource compilers ---
289
297
  function compileDomain(domain, outputs) {
290
298
  const body = domain.body;
291
299
  const fm = commonFrontmatter(domain.name, body);
292
300
  const summary = getSummary(body);
293
- outputs.push(makeOutput(`domains/${domain.name}/index.md`, fm, summary));
301
+ outputs.push(makeOutput(versionedPath("domains", domain.name, body), fm, summary));
294
302
  for (const svc of getServices(body)) {
295
303
  compileService(svc, outputs);
296
304
  compileInlineMessages(svc, outputs);
@@ -299,7 +307,7 @@ function compileDomain(domain, outputs) {
299
307
  const subBody = sub.body;
300
308
  const subFm = commonFrontmatter(sub.name, subBody);
301
309
  const subSummary = getSummary(subBody);
302
- outputs.push(makeOutput(`domains/${domain.name}/domains/${sub.name}/index.md`, subFm, subSummary));
310
+ outputs.push(makeOutput(versionedPath(`domains/${domain.name}/domains`, sub.name, subBody), subFm, subSummary));
303
311
  for (const svc of getServices(subBody)) {
304
312
  compileService(svc, outputs);
305
313
  compileInlineMessages(svc, outputs);
@@ -317,7 +325,7 @@ function compileService(svc, outputs) {
317
325
  if (receives.length > 0) {
318
326
  fm.receives = receives.map((r) => buildMessageRef(r));
319
327
  }
320
- outputs.push(makeOutput(`services/${svc.name}/index.md`, fm, getSummary(body)));
328
+ outputs.push(makeOutput(versionedPath("services", svc.name, body), fm, getSummary(body)));
321
329
  }
322
330
  function buildMessageRef(clause) {
323
331
  const ref = { id: clause.messageName };
@@ -344,14 +352,14 @@ function compileInlineMessages(svc, outputs) {
344
352
  ? "commands"
345
353
  : "queries";
346
354
  const fm = commonFrontmatter(clause.messageName, inlineBody);
347
- outputs.push(makeOutput(`${folder}/${clause.messageName}/index.md`, fm, getSummary(inlineBody)));
355
+ outputs.push(makeOutput(versionedPath(folder, clause.messageName, inlineBody), fm, getSummary(inlineBody)));
348
356
  }
349
357
  }
350
358
  }
351
359
  function compileMessage(msg, folder, outputs) {
352
360
  const body = msg.body;
353
361
  const fm = commonFrontmatter(msg.name, body);
354
- outputs.push(makeOutput(`${folder}/${msg.name}/index.md`, fm, getSummary(body)));
362
+ outputs.push(makeOutput(versionedPath(folder, msg.name, body), fm, getSummary(body)));
355
363
  }
356
364
  function compileChannel(ch, outputs) {
357
365
  const body = ch.body;
@@ -379,7 +387,7 @@ function compileChannel(ch, outputs) {
379
387
  return param;
380
388
  });
381
389
  }
382
- outputs.push(makeOutput(`channels/${ch.name}/index.md`, fm, getSummary(body)));
390
+ outputs.push(makeOutput(versionedPath("channels", ch.name, body), fm, getSummary(body)));
383
391
  }
384
392
  function compileContainer(cont, outputs) {
385
393
  const body = cont.body;
@@ -405,7 +413,7 @@ function compileContainer(cont, outputs) {
405
413
  const ret = getRetention(body);
406
414
  if (ret)
407
415
  fm.retention = ret;
408
- outputs.push(makeOutput(`containers/${cont.name}/index.md`, fm, getSummary(body)));
416
+ outputs.push(makeOutput(versionedPath("containers", cont.name, body), fm, getSummary(body)));
409
417
  }
410
418
  function compileDataProduct(dp, outputs) {
411
419
  const body = dp.body;
@@ -433,7 +441,7 @@ function compileDataProduct(dp, outputs) {
433
441
  return o;
434
442
  });
435
443
  }
436
- outputs.push(makeOutput(`data-products/${dp.name}/index.md`, fm, getSummary(body)));
444
+ outputs.push(makeOutput(versionedPath("data-products", dp.name, body), fm, getSummary(body)));
437
445
  }
438
446
  function compileFlow(flow, outputs) {
439
447
  const body = flow.body;
@@ -446,7 +454,7 @@ function compileFlow(flow, outputs) {
446
454
  fm.steps = steps;
447
455
  }
448
456
  }
449
- outputs.push(makeOutput(`flows/${flow.name}/index.md`, fm, getSummary(body)));
457
+ outputs.push(makeOutput(versionedPath("flows", flow.name, body), fm, getSummary(body)));
450
458
  }
451
459
  function flowRefToStep(ref) {
452
460
  return {
@@ -525,7 +533,7 @@ function compileFlowBody(entryChains, whenBlocks) {
525
533
  function compileDiagram(diag, outputs) {
526
534
  const body = diag.body;
527
535
  const fm = commonFrontmatter(diag.name, body);
528
- outputs.push(makeOutput(`diagrams/${diag.name}/index.md`, fm, getSummary(body)));
536
+ outputs.push(makeOutput(versionedPath("diagrams", diag.name, body), fm, getSummary(body)));
529
537
  }
530
538
  function compileUser(user, outputs) {
531
539
  const fm = {
@@ -569,7 +577,6 @@ function compileTeam(team, outputs) {
569
577
  };
570
578
  let summary;
571
579
  const members = [];
572
- const owns = [];
573
580
  const annotations = [];
574
581
  for (const prop of team.props) {
575
582
  switch (prop.$type) {
@@ -580,6 +587,12 @@ function compileTeam(team, outputs) {
580
587
  summary = stripQuotes(prop.value);
581
588
  fm.summary = summary;
582
589
  break;
590
+ case "TeamAvatarProp":
591
+ fm.avatar = stripQuotes(prop.value);
592
+ break;
593
+ case "TeamRoleProp":
594
+ fm.role = stripQuotes(prop.value);
595
+ break;
583
596
  case "TeamEmailProp":
584
597
  fm.email = stripQuotes(prop.value);
585
598
  break;
@@ -592,9 +605,6 @@ function compileTeam(team, outputs) {
592
605
  case "TeamMemberProp":
593
606
  members.push(prop.memberRef);
594
607
  break;
595
- case "TeamOwnsProp":
596
- owns.push({ type: prop.owns.resourceType, id: prop.owns.resourceName });
597
- break;
598
608
  case "TeamAnnotationProp":
599
609
  annotations.push(prop.annotation);
600
610
  break;
@@ -602,8 +612,6 @@ function compileTeam(team, outputs) {
602
612
  }
603
613
  if (members.length > 0)
604
614
  fm.members = members;
605
- if (owns.length > 0)
606
- fm.owns = owns;
607
615
  const annFields = mapAnnotations(annotations);
608
616
  Object.assign(fm, annFields);
609
617
  outputs.push(makeOutput(`teams/${team.name}.md`, fm, summary));
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ec-completion-provider.d.ts","sourceRoot":"","sources":["../src/ec-completion-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EAE1B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAsI/C,qBAAa,oBAAqB,SAAQ,yBAAyB;IACjE,SAAkB,iBAAiB,EAAE,yBAAyB,CAE5D;gBAEU,QAAQ,EAAE,eAAe;cAIlB,aAAa,CAC9B,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,kBAAkB,GAC3B,YAAY,CAAC,IAAI,CAAC;cASF,oBAAoB,CACrC,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,EAC3B,QAAQ,EAAE,kBAAkB,GAC3B,YAAY,CAAC,IAAI,CAAC;IAiCrB,OAAO,CAAC,uBAAuB;IAgC/B,OAAO,CAAC,uBAAuB;CAchC"}
1
+ {"version":3,"file":"ec-completion-provider.d.ts","sourceRoot":"","sources":["../src/ec-completion-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EAE1B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAwI/C,qBAAa,oBAAqB,SAAQ,yBAAyB;IACjE,SAAkB,iBAAiB,EAAE,yBAAyB,CAE5D;gBAEU,QAAQ,EAAE,eAAe;cAIlB,aAAa,CAC9B,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,kBAAkB,GAC3B,YAAY,CAAC,IAAI,CAAC;cASF,oBAAoB,CACrC,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,EAC3B,QAAQ,EAAE,kBAAkB,GAC3B,YAAY,CAAC,IAAI,CAAC;IAiCrB,OAAO,CAAC,uBAAuB;IAgC/B,OAAO,CAAC,uBAAuB;CAchC"}
@@ -7,7 +7,6 @@ const RESOURCE_KEYWORDS = new Map([
7
7
  ["command", "Command message"],
8
8
  ["query", "Query message"],
9
9
  ["channel", "Communication channel"],
10
- ["entity", "Domain entity"],
11
10
  ["container", "Data container (database, cache, etc.)"],
12
11
  ["data-product", "Analytical data product"],
13
12
  ["flow", "Process flow definition"],
@@ -31,8 +30,6 @@ const PROPERTY_KEYWORDS = new Map([
31
30
  ["technology", "Technology or implementation"],
32
31
  ["residency", "Data residency region"],
33
32
  ["retention", "Data retention policy"],
34
- ["identifier", "Entity identifier field"],
35
- ["aggregate-root", "Mark entity as aggregate root"],
36
33
  ["authoritative", "Authoritative data source"],
37
34
  ["classification", "Data classification level"],
38
35
  ["access-mode", "Data access pattern (read, write, etc.)"],
@@ -53,7 +50,6 @@ const RELATIONSHIP_KEYWORDS = new Map([
53
50
  ]);
54
51
  const BLOCK_KEYWORDS = new Map([
55
52
  ["subdomain", "Nested subdomain"],
56
- ["property", "Entity property"],
57
53
  ["parameter", "Channel parameter"],
58
54
  ["->", "Flow arrow"],
59
55
  ["when", "Flow when-block trigger"],
@@ -75,27 +71,27 @@ const KNOWN_ANNOTATIONS = [
75
71
  const RESOURCE_SNIPPETS = {
76
72
  service: {
77
73
  label: "service (block)",
78
- snippet: "service ${1:ServiceName} {\n version ${2:0.0.1}\n $0\n}",
74
+ snippet: 'service ${1:ServiceName} {\n version ${2:0.0.1}\n summary "${3:Service that manages and processes $1 operations}"\n $0\n}',
79
75
  },
80
76
  event: {
81
77
  label: "event (block)",
82
- snippet: "event ${1:EventName} {\n version ${2:0.0.1}\n $0\n}",
78
+ snippet: 'event ${1:EventName} {\n version ${2:0.0.1}\n summary "${3:Triggered when a significant change occurs in the domain}"\n $0\n}',
83
79
  },
84
80
  command: {
85
81
  label: "command (block)",
86
- snippet: "command ${1:CommandName} {\n version ${2:0.0.1}\n $0\n}",
82
+ snippet: 'command ${1:CommandName} {\n version ${2:0.0.1}\n summary "${3:Requests an action to be performed in the system}"\n $0\n}',
87
83
  },
88
84
  query: {
89
85
  label: "query (block)",
90
- snippet: "query ${1:QueryName} {\n version ${2:0.0.1}\n $0\n}",
86
+ snippet: 'query ${1:QueryName} {\n version ${2:0.0.1}\n summary "${3:Retrieves data from the system without side effects}"\n $0\n}',
91
87
  },
92
88
  domain: {
93
89
  label: "domain (block)",
94
- snippet: "domain ${1:DomainName} {\n version ${2:0.0.1}\n $0\n}",
90
+ snippet: 'domain ${1:DomainName} {\n version ${2:0.0.1}\n summary "${3:Bounded context responsible for $1}"\n $0\n}',
95
91
  },
96
92
  container: {
97
93
  label: "container (block)",
98
- snippet: "container ${1:ContainerName} {\n version ${2:0.0.1}\n $0\n}",
94
+ snippet: 'container ${1:ContainerName} {\n version ${2:0.0.1}\n summary "${3:Data store that persists and manages $1 data}"\n $0\n}',
99
95
  },
100
96
  visualizer: {
101
97
  label: "visualizer (block)",
@@ -103,11 +99,11 @@ const RESOURCE_SNIPPETS = {
103
99
  },
104
100
  actor: {
105
101
  label: "actor (block)",
106
- snippet: 'actor ${1:ActorName} {\n name "${2:Display Name}"\n summary "${3:description}"\n}',
102
+ snippet: 'actor ${1:ActorName} {\n name "${2:Display Name}"\n summary "${3:User or persona that interacts with the system}"\n}',
107
103
  },
108
104
  "external-system": {
109
105
  label: "external-system (block)",
110
- snippet: 'external-system ${1:SystemName} {\n name "${2:Display Name}"\n summary "${3:description}"\n}',
106
+ snippet: 'external-system ${1:SystemName} {\n name "${2:Display Name}"\n summary "${3:Third-party system that integrates with the platform}"\n}',
111
107
  },
112
108
  };
113
109
  function getKeywordInfo(keyword) {
@@ -1 +1 @@
1
- {"version":3,"file":"ec-completion-provider.js","sourceRoot":"","sources":["../src/ec-completion-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ec-completion-provider.js","sourceRoot":"","sources":["../src/ec-completion-provider.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ export declare const EcTerminals: {
13
13
  ID: RegExp;
14
14
  };
15
15
  export type EcTerminalNames = keyof typeof EcTerminals;
16
- export type EcKeywordNames = "(" | ")" | "," | "->" | ":" | "@" | "[" | "]" | "access-mode" | "actor" | "address" | "and" | "animated" | "appendOnly" | "authoritative" | "avatar" | "cache" | "channel" | "classification" | "color" | "command" | "confidential" | "container" | "container-type" | "contract" | "data-product" | "dataLake" | "dataWarehouse" | "database" | "default" | "delivery" | "deprecated" | "description" | "diagram" | "domain" | "draft" | "email" | "enum" | "event" | "examples" | "external-system" | "externalSaaS" | "false" | "flow" | "focus-mode" | "from" | "hidden" | "icon" | "import" | "input" | "internal" | "label" | "legend" | "member" | "message" | "ms-teams" | "name" | "objectStore" | "other" | "output" | "owner" | "owns" | "parameter" | "path" | "post-it" | "protocol" | "public" | "pull" | "push" | "push-pull" | "query" | "read" | "readWrite" | "reads-from" | "receives" | "regulated" | "residency" | "retention" | "role" | "route" | "schema" | "search" | "searchIndex" | "sends" | "service" | "slack" | "style" | "subdomain" | "summary" | "team" | "technology" | "title" | "to" | "toolbar" | "true" | "type" | "url" | "user" | "version" | "visible" | "visualizer" | "when" | "write" | "writes-to" | "{" | "}";
16
+ export type EcKeywordNames = "(" | ")" | "," | "->" | ":" | "@" | "[" | "]" | "access-mode" | "actor" | "address" | "and" | "animated" | "appendOnly" | "authoritative" | "avatar" | "cache" | "channel" | "classification" | "color" | "command" | "confidential" | "container" | "container-type" | "contract" | "data-product" | "dataLake" | "dataWarehouse" | "database" | "default" | "delivery" | "deprecated" | "description" | "diagram" | "domain" | "draft" | "email" | "enum" | "event" | "examples" | "external-system" | "externalSaaS" | "false" | "flow" | "focus-mode" | "from" | "hidden" | "icon" | "import" | "input" | "internal" | "label" | "legend" | "member" | "message" | "ms-teams" | "name" | "objectStore" | "other" | "output" | "owner" | "parameter" | "path" | "post-it" | "protocol" | "public" | "pull" | "push" | "push-pull" | "query" | "read" | "readWrite" | "reads-from" | "receives" | "regulated" | "residency" | "retention" | "role" | "route" | "schema" | "search" | "searchIndex" | "sends" | "service" | "slack" | "style" | "subdomain" | "summary" | "team" | "technology" | "title" | "to" | "toolbar" | "true" | "type" | "url" | "user" | "version" | "visible" | "visualizer" | "when" | "write" | "writes-to" | "{" | "}";
17
17
  export type EcTokenNames = EcTerminalNames | EcKeywordNames;
18
18
  export type AccessModeEnum = 'appendOnly' | 'read' | 'readWrite' | 'write';
19
19
  export declare function isAccessModeEnum(item: unknown): item is AccessModeEnum;
@@ -90,10 +90,10 @@ export declare const ServiceBodyItem = "ServiceBodyItem";
90
90
  export declare function isServiceBodyItem(item: unknown): item is ServiceBodyItem;
91
91
  export type StyleEnum = 'default' | 'post-it';
92
92
  export declare function isStyleEnum(item: unknown): item is StyleEnum;
93
- export type TeamProp = TeamAnnotationProp | TeamEmailProp | TeamMemberProp | TeamMsTeamsProp | TeamNameProp | TeamOwnsProp | TeamSlackProp | TeamSummaryProp;
93
+ export type TeamProp = TeamAnnotationProp | TeamAvatarProp | TeamEmailProp | TeamMemberProp | TeamMsTeamsProp | TeamNameProp | TeamRoleProp | TeamSlackProp | TeamSummaryProp;
94
94
  export declare const TeamProp = "TeamProp";
95
95
  export declare function isTeamProp(item: unknown): item is TeamProp;
96
- export type UserProp = UserAnnotationProp | UserAvatarProp | UserEmailProp | UserMsTeamsProp | UserNameProp | UserOwnsProp | UserRoleProp | UserSlackProp | UserTeamProp;
96
+ export type UserProp = UserAnnotationProp | UserAvatarProp | UserEmailProp | UserMsTeamsProp | UserNameProp | UserRoleProp | UserSlackProp;
97
97
  export declare const UserProp = "UserProp";
98
98
  export declare function isUserProp(item: unknown): item is UserProp;
99
99
  export type VisualizerBodyItem = ActorDef | AnimatedStmt | Annotation | ChannelDef | ChannelRefStmt | CommandDef | ContainerDef | ContainerRefStmt | DataProductDef | DataProductRefStmt | DomainDef | DomainRefStmt | EventDef | ExternalSystemDef | FlowDef | FlowRefStmt | FocusModeStmt | LegendStmt | NameStmt | QueryDef | SearchStmt | ServiceDef | ServiceRefStmt | StyleStmt | SummaryStmt | ToolbarStmt;
@@ -448,14 +448,6 @@ export interface OwnerStmt extends langium.AstNode {
448
448
  }
449
449
  export declare const OwnerStmt = "OwnerStmt";
450
450
  export declare function isOwnerStmt(item: unknown): item is OwnerStmt;
451
- export interface OwnsStmt extends langium.AstNode {
452
- readonly $container: TeamOwnsProp | UserOwnsProp;
453
- readonly $type: 'OwnsStmt';
454
- resourceName: string;
455
- resourceType: ResourceTypeKw;
456
- }
457
- export declare const OwnsStmt = "OwnsStmt";
458
- export declare function isOwnsStmt(item: unknown): item is OwnsStmt;
459
451
  export interface ParameterDecl extends langium.AstNode {
460
452
  readonly $container: ChannelDef;
461
453
  readonly $type: 'ParameterDecl';
@@ -660,6 +652,13 @@ export interface TeamAnnotationProp extends langium.AstNode {
660
652
  }
661
653
  export declare const TeamAnnotationProp = "TeamAnnotationProp";
662
654
  export declare function isTeamAnnotationProp(item: unknown): item is TeamAnnotationProp;
655
+ export interface TeamAvatarProp extends langium.AstNode {
656
+ readonly $container: TeamDef;
657
+ readonly $type: 'TeamAvatarProp';
658
+ value: string;
659
+ }
660
+ export declare const TeamAvatarProp = "TeamAvatarProp";
661
+ export declare function isTeamAvatarProp(item: unknown): item is TeamAvatarProp;
663
662
  export interface TeamDef extends langium.AstNode {
664
663
  readonly $container: Program;
665
664
  readonly $type: 'TeamDef';
@@ -696,13 +695,13 @@ export interface TeamNameProp extends langium.AstNode {
696
695
  }
697
696
  export declare const TeamNameProp = "TeamNameProp";
698
697
  export declare function isTeamNameProp(item: unknown): item is TeamNameProp;
699
- export interface TeamOwnsProp extends langium.AstNode {
698
+ export interface TeamRoleProp extends langium.AstNode {
700
699
  readonly $container: TeamDef;
701
- readonly $type: 'TeamOwnsProp';
702
- owns: OwnsStmt;
700
+ readonly $type: 'TeamRoleProp';
701
+ value: string;
703
702
  }
704
- export declare const TeamOwnsProp = "TeamOwnsProp";
705
- export declare function isTeamOwnsProp(item: unknown): item is TeamOwnsProp;
703
+ export declare const TeamRoleProp = "TeamRoleProp";
704
+ export declare function isTeamRoleProp(item: unknown): item is TeamRoleProp;
706
705
  export interface TeamSlackProp extends langium.AstNode {
707
706
  readonly $container: TeamDef;
708
707
  readonly $type: 'TeamSlackProp';
@@ -782,13 +781,6 @@ export interface UserNameProp extends langium.AstNode {
782
781
  }
783
782
  export declare const UserNameProp = "UserNameProp";
784
783
  export declare function isUserNameProp(item: unknown): item is UserNameProp;
785
- export interface UserOwnsProp extends langium.AstNode {
786
- readonly $container: UserDef;
787
- readonly $type: 'UserOwnsProp';
788
- owns: OwnsStmt;
789
- }
790
- export declare const UserOwnsProp = "UserOwnsProp";
791
- export declare function isUserOwnsProp(item: unknown): item is UserOwnsProp;
792
784
  export interface UserRoleProp extends langium.AstNode {
793
785
  readonly $container: UserDef;
794
786
  readonly $type: 'UserRoleProp';
@@ -803,13 +795,6 @@ export interface UserSlackProp extends langium.AstNode {
803
795
  }
804
796
  export declare const UserSlackProp = "UserSlackProp";
805
797
  export declare function isUserSlackProp(item: unknown): item is UserSlackProp;
806
- export interface UserTeamProp extends langium.AstNode {
807
- readonly $container: UserDef;
808
- readonly $type: 'UserTeamProp';
809
- teamRef: string;
810
- }
811
- export declare const UserTeamProp = "UserTeamProp";
812
- export declare function isUserTeamProp(item: unknown): item is UserTeamProp;
813
798
  export interface VersionAnnotationValue extends langium.AstNode {
814
799
  readonly $container: NamedAnnotationArg | PositionalAnnotationArg;
815
800
  readonly $type: 'VersionAnnotationValue';
@@ -899,7 +884,6 @@ export type EcAstType = {
899
884
  NumberAnnotationValue: NumberAnnotationValue;
900
885
  OutputStmt: OutputStmt;
901
886
  OwnerStmt: OwnerStmt;
902
- OwnsStmt: OwnsStmt;
903
887
  ParameterDecl: ParameterDecl;
904
888
  ParameterDefaultProp: ParameterDefaultProp;
905
889
  ParameterDescriptionProp: ParameterDescriptionProp;
@@ -931,13 +915,14 @@ export type EcAstType = {
931
915
  SubdomainDef: SubdomainDef;
932
916
  SummaryStmt: SummaryStmt;
933
917
  TeamAnnotationProp: TeamAnnotationProp;
918
+ TeamAvatarProp: TeamAvatarProp;
934
919
  TeamDef: TeamDef;
935
920
  TeamEmailProp: TeamEmailProp;
936
921
  TeamMemberProp: TeamMemberProp;
937
922
  TeamMsTeamsProp: TeamMsTeamsProp;
938
923
  TeamNameProp: TeamNameProp;
939
- TeamOwnsProp: TeamOwnsProp;
940
924
  TeamProp: TeamProp;
925
+ TeamRoleProp: TeamRoleProp;
941
926
  TeamSlackProp: TeamSlackProp;
942
927
  TeamSummaryProp: TeamSummaryProp;
943
928
  TechnologyStmt: TechnologyStmt;
@@ -949,11 +934,9 @@ export type EcAstType = {
949
934
  UserEmailProp: UserEmailProp;
950
935
  UserMsTeamsProp: UserMsTeamsProp;
951
936
  UserNameProp: UserNameProp;
952
- UserOwnsProp: UserOwnsProp;
953
937
  UserProp: UserProp;
954
938
  UserRoleProp: UserRoleProp;
955
939
  UserSlackProp: UserSlackProp;
956
- UserTeamProp: UserTeamProp;
957
940
  VersionAnnotationValue: VersionAnnotationValue;
958
941
  VersionStmt: VersionStmt;
959
942
  VisualizerBodyItem: VisualizerBodyItem;