@likec4/language-server 1.18.0 → 1.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (250) hide show
  1. package/dist/LikeC4FileSystem.d.ts +13 -0
  2. package/dist/LikeC4FileSystem.js +27 -0
  3. package/dist/Rpc.d.ts +9 -0
  4. package/dist/Rpc.js +132 -0
  5. package/dist/ast.d.ts +200 -0
  6. package/dist/ast.js +276 -0
  7. package/dist/browser.d.ts +7 -20
  8. package/dist/browser.js +13 -0
  9. package/dist/documentation/documentation-provider.d.ts +8 -0
  10. package/dist/documentation/documentation-provider.js +46 -0
  11. package/dist/documentation/index.d.ts +1 -0
  12. package/dist/documentation/index.js +1 -0
  13. package/dist/formatting/LikeC4Formatter.d.ts +27 -0
  14. package/dist/formatting/LikeC4Formatter.js +261 -0
  15. package/dist/formatting/utils.d.ts +6 -0
  16. package/dist/formatting/utils.js +15 -0
  17. package/dist/generated/ast.d.ts +1242 -0
  18. package/dist/generated/ast.js +1945 -0
  19. package/dist/generated/grammar.d.ts +6 -0
  20. package/dist/generated/grammar.js +3 -0
  21. package/dist/generated/module.d.ts +9 -0
  22. package/dist/generated/module.js +23 -0
  23. package/dist/generated-lib/icons.d.ts +1 -0
  24. package/dist/{likec4lib.mjs → generated-lib/icons.js} +1 -6
  25. package/dist/index.d.ts +9 -31
  26. package/dist/index.js +14 -0
  27. package/dist/like-c4.langium +845 -0
  28. package/dist/likec4lib.d.ts +4 -6
  29. package/dist/likec4lib.js +4 -0
  30. package/dist/logger.d.ts +7 -0
  31. package/dist/logger.js +73 -0
  32. package/dist/lsp/CodeLensProvider.d.ts +9 -0
  33. package/dist/lsp/CodeLensProvider.js +40 -0
  34. package/dist/lsp/CompletionProvider.d.ts +6 -0
  35. package/dist/lsp/CompletionProvider.js +135 -0
  36. package/dist/lsp/DocumentHighlightProvider.d.ts +9 -0
  37. package/dist/lsp/DocumentHighlightProvider.js +10 -0
  38. package/dist/lsp/DocumentLinkProvider.d.ts +11 -0
  39. package/dist/lsp/DocumentLinkProvider.js +49 -0
  40. package/dist/lsp/DocumentSymbolProvider.d.ts +32 -0
  41. package/dist/lsp/DocumentSymbolProvider.js +274 -0
  42. package/dist/lsp/HoverProvider.d.ts +10 -0
  43. package/dist/lsp/HoverProvider.js +69 -0
  44. package/dist/lsp/RenameProvider.d.ts +5 -0
  45. package/dist/lsp/RenameProvider.js +6 -0
  46. package/dist/lsp/SemanticTokenProvider.d.ts +7 -0
  47. package/dist/lsp/SemanticTokenProvider.js +297 -0
  48. package/dist/lsp/index.d.ts +7 -0
  49. package/dist/lsp/index.js +7 -0
  50. package/dist/model/deployments-index.d.ts +60 -0
  51. package/dist/model/deployments-index.js +181 -0
  52. package/dist/model/fqn-computation.d.ts +3 -0
  53. package/dist/model/fqn-computation.js +72 -0
  54. package/dist/model/fqn-index.d.ts +25 -0
  55. package/dist/model/fqn-index.js +96 -0
  56. package/dist/model/index.d.ts +6 -0
  57. package/dist/model/index.js +6 -0
  58. package/dist/model/model-builder.d.ts +32 -0
  59. package/dist/model/model-builder.js +598 -0
  60. package/dist/model/model-locator.d.ts +23 -0
  61. package/dist/model/model-locator.js +126 -0
  62. package/dist/model/model-parser-where.d.ts +3 -0
  63. package/dist/model/model-parser-where.js +70 -0
  64. package/dist/model/model-parser.d.ts +292 -0
  65. package/dist/model/model-parser.js +72 -0
  66. package/dist/model/parser/Base.d.ts +28 -0
  67. package/dist/model/parser/Base.js +87 -0
  68. package/dist/model/parser/DeploymentModelParser.d.ts +33 -0
  69. package/dist/model/parser/DeploymentModelParser.js +162 -0
  70. package/dist/model/parser/DeploymentViewParser.d.ts +38 -0
  71. package/dist/model/parser/DeploymentViewParser.js +98 -0
  72. package/dist/model/parser/FqnRefParser.d.ts +29 -0
  73. package/dist/model/parser/FqnRefParser.js +108 -0
  74. package/dist/model/parser/GlobalsParser.d.ts +66 -0
  75. package/dist/model/parser/GlobalsParser.js +80 -0
  76. package/dist/model/parser/ModelParser.d.ts +27 -0
  77. package/dist/model/parser/ModelParser.js +122 -0
  78. package/dist/model/parser/PredicatesParser.d.ts +34 -0
  79. package/dist/model/parser/PredicatesParser.js +272 -0
  80. package/dist/model/parser/SpecificationParser.d.ts +27 -0
  81. package/dist/model/parser/SpecificationParser.js +120 -0
  82. package/dist/model/parser/ViewsParser.d.ts +64 -0
  83. package/dist/model/parser/ViewsParser.js +377 -0
  84. package/dist/model-change/ModelChanges.d.ts +15 -0
  85. package/dist/model-change/ModelChanges.js +89 -0
  86. package/dist/model-change/changeElementStyle.d.ts +16 -0
  87. package/dist/model-change/changeElementStyle.js +136 -0
  88. package/dist/model-change/changeViewLayout.d.ts +12 -0
  89. package/dist/model-change/changeViewLayout.js +32 -0
  90. package/dist/model-change/saveManualLayout.d.ts +11 -0
  91. package/dist/model-change/saveManualLayout.js +27 -0
  92. package/dist/module.d.ts +70 -0
  93. package/dist/module.js +162 -0
  94. package/dist/protocol.d.ts +38 -23
  95. package/dist/protocol.js +15 -0
  96. package/dist/references/index.d.ts +3 -0
  97. package/dist/references/index.js +3 -0
  98. package/dist/references/name-provider.d.ts +9 -0
  99. package/dist/references/name-provider.js +33 -0
  100. package/dist/references/scope-computation.d.ts +20 -0
  101. package/dist/references/scope-computation.js +281 -0
  102. package/dist/references/scope-provider.d.ts +16 -0
  103. package/dist/references/scope-provider.js +165 -0
  104. package/dist/shared/NodeKindProvider.d.ts +15 -0
  105. package/dist/shared/NodeKindProvider.js +108 -0
  106. package/dist/shared/WorkspaceManager.d.ts +18 -0
  107. package/dist/shared/WorkspaceManager.js +36 -0
  108. package/dist/shared/WorkspaceSymbolProvider.d.ts +3 -0
  109. package/dist/shared/WorkspaceSymbolProvider.js +3 -0
  110. package/dist/shared/index.d.ts +3 -0
  111. package/dist/shared/index.js +3 -0
  112. package/dist/test/index.d.ts +1 -0
  113. package/dist/test/index.js +1 -0
  114. package/dist/test/setup.d.ts +1 -0
  115. package/dist/test/setup.js +7 -0
  116. package/dist/test/testServices.d.ts +22 -0
  117. package/dist/test/testServices.js +119 -0
  118. package/dist/utils/elementRef.d.ts +11 -0
  119. package/dist/utils/elementRef.js +15 -0
  120. package/dist/utils/fqnRef.d.ts +8 -0
  121. package/dist/utils/fqnRef.js +46 -0
  122. package/dist/utils/index.d.ts +1 -0
  123. package/dist/utils/index.js +1 -0
  124. package/dist/utils/printDocs.d.ts +2 -0
  125. package/dist/utils/printDocs.js +1 -0
  126. package/dist/utils/stringHash.d.ts +1 -0
  127. package/dist/utils/stringHash.js +5 -0
  128. package/dist/validation/_shared.d.ts +3 -0
  129. package/dist/validation/_shared.js +22 -0
  130. package/dist/validation/deployment-checks.d.ts +6 -0
  131. package/dist/validation/deployment-checks.js +114 -0
  132. package/dist/validation/dynamic-view-rule.d.ts +4 -0
  133. package/dist/validation/dynamic-view-rule.js +17 -0
  134. package/dist/validation/dynamic-view-step.d.ts +4 -0
  135. package/dist/validation/dynamic-view-step.js +29 -0
  136. package/dist/validation/element.d.ts +4 -0
  137. package/dist/validation/element.js +49 -0
  138. package/dist/validation/index.d.ts +15 -0
  139. package/dist/validation/index.js +152 -0
  140. package/dist/validation/property-checks.d.ts +6 -0
  141. package/dist/validation/property-checks.js +39 -0
  142. package/dist/validation/relation.d.ts +5 -0
  143. package/dist/validation/relation.js +56 -0
  144. package/dist/validation/specification.d.ts +11 -0
  145. package/dist/validation/specification.js +136 -0
  146. package/dist/validation/view-predicates/element-with.d.ts +4 -0
  147. package/dist/validation/view-predicates/element-with.js +31 -0
  148. package/dist/validation/view-predicates/expanded-element.d.ts +4 -0
  149. package/dist/validation/view-predicates/expanded-element.js +12 -0
  150. package/dist/validation/view-predicates/expression-v2.d.ts +5 -0
  151. package/dist/validation/view-predicates/expression-v2.js +83 -0
  152. package/dist/validation/view-predicates/incoming.d.ts +4 -0
  153. package/dist/validation/view-predicates/incoming.js +16 -0
  154. package/dist/validation/view-predicates/index.d.ts +6 -0
  155. package/dist/validation/view-predicates/index.js +6 -0
  156. package/dist/validation/view-predicates/outgoing.d.ts +4 -0
  157. package/dist/validation/view-predicates/outgoing.js +16 -0
  158. package/dist/validation/view-predicates/relation-with.d.ts +4 -0
  159. package/dist/validation/view-predicates/relation-with.js +13 -0
  160. package/dist/validation/view.d.ts +4 -0
  161. package/dist/validation/view.js +23 -0
  162. package/dist/view-utils/assignNavigateTo.d.ts +2 -0
  163. package/dist/view-utils/assignNavigateTo.js +25 -0
  164. package/dist/view-utils/index.d.ts +2 -0
  165. package/dist/view-utils/index.js +2 -0
  166. package/dist/view-utils/manual-layout.d.ts +7 -0
  167. package/dist/view-utils/manual-layout.js +99 -0
  168. package/dist/view-utils/resolve-relative-paths.d.ts +2 -0
  169. package/dist/view-utils/resolve-relative-paths.js +78 -0
  170. package/dist/views/configurable-layouter.d.ts +7 -0
  171. package/dist/views/configurable-layouter.js +55 -0
  172. package/dist/views/index.d.ts +1 -0
  173. package/dist/views/index.js +1 -0
  174. package/dist/views/likec4-views.d.ts +26 -0
  175. package/dist/views/likec4-views.js +113 -0
  176. package/package.json +40 -54
  177. package/src/LikeC4FileSystem.ts +22 -21
  178. package/src/Rpc.ts +13 -7
  179. package/src/ast.ts +44 -133
  180. package/src/browser.ts +11 -11
  181. package/src/documentation/documentation-provider.ts +52 -0
  182. package/src/documentation/index.ts +1 -0
  183. package/src/generated/ast.ts +177 -177
  184. package/src/generated/grammar.ts +1 -1
  185. package/src/index.ts +13 -9
  186. package/src/like-c4.langium +37 -34
  187. package/src/logger.ts +34 -55
  188. package/src/lsp/CompletionProvider.ts +4 -4
  189. package/src/lsp/DocumentSymbolProvider.ts +110 -28
  190. package/src/lsp/HoverProvider.ts +5 -3
  191. package/src/lsp/SemanticTokenProvider.ts +2 -2
  192. package/src/model/deployments-index.ts +18 -14
  193. package/src/model/fqn-computation.ts +8 -8
  194. package/src/model/model-builder.ts +62 -60
  195. package/src/model/model-parser.ts +62 -1574
  196. package/src/model/parser/Base.ts +107 -0
  197. package/src/model/parser/DeploymentModelParser.ts +192 -0
  198. package/src/model/parser/DeploymentViewParser.ts +116 -0
  199. package/src/model/parser/FqnRefParser.ts +118 -0
  200. package/src/model/parser/GlobalsParser.ts +96 -0
  201. package/src/model/parser/ModelParser.ts +141 -0
  202. package/src/model/parser/PredicatesParser.ts +291 -0
  203. package/src/model/parser/SpecificationParser.ts +133 -0
  204. package/src/model/parser/ViewsParser.ts +428 -0
  205. package/src/module.ts +71 -25
  206. package/src/protocol.ts +29 -4
  207. package/src/references/scope-computation.ts +35 -35
  208. package/src/references/scope-provider.ts +13 -7
  209. package/src/utils/{deploymentRef.ts → fqnRef.ts} +27 -2
  210. package/src/validation/_shared.ts +0 -1
  211. package/src/validation/deployment-checks.ts +49 -62
  212. package/src/validation/dynamic-view-rule.ts +5 -4
  213. package/src/validation/dynamic-view-step.ts +23 -26
  214. package/src/validation/index.ts +100 -9
  215. package/src/validation/property-checks.ts +11 -10
  216. package/src/validation/specification.ts +38 -38
  217. package/src/validation/view-predicates/element-with.ts +6 -5
  218. package/src/validation/view-predicates/expanded-element.ts +6 -5
  219. package/src/validation/view-predicates/expression-v2.ts +101 -0
  220. package/src/validation/view-predicates/incoming.ts +6 -5
  221. package/src/validation/view-predicates/index.ts +1 -1
  222. package/src/validation/view-predicates/outgoing.ts +6 -5
  223. package/src/validation/view-predicates/relation-with.ts +6 -5
  224. package/src/validation/view.ts +5 -5
  225. package/src/view-utils/assignNavigateTo.ts +1 -1
  226. package/src/view-utils/manual-layout.ts +25 -0
  227. package/src/views/configurable-layouter.ts +65 -0
  228. package/src/views/index.ts +1 -0
  229. package/src/views/likec4-views.ts +139 -0
  230. package/dist/browser.cjs +0 -25
  231. package/dist/browser.d.cts +0 -23
  232. package/dist/browser.d.mts +0 -23
  233. package/dist/browser.mjs +0 -20
  234. package/dist/index.cjs +0 -53
  235. package/dist/index.d.cts +0 -34
  236. package/dist/index.d.mts +0 -34
  237. package/dist/index.mjs +0 -46
  238. package/dist/likec4lib.cjs +0 -1546
  239. package/dist/likec4lib.d.cts +0 -6
  240. package/dist/likec4lib.d.mts +0 -6
  241. package/dist/protocol.cjs +0 -25
  242. package/dist/protocol.d.cts +0 -48
  243. package/dist/protocol.d.mts +0 -48
  244. package/dist/protocol.mjs +0 -17
  245. package/dist/shared/language-server.CO_nmHiL.cjs +0 -7689
  246. package/dist/shared/language-server.Da6ey08o.d.cts +0 -1619
  247. package/dist/shared/language-server.De7S3e5Z.d.ts +0 -1619
  248. package/dist/shared/language-server.Dj4iDjtB.d.mts +0 -1619
  249. package/dist/shared/language-server.oO_9JoAG.mjs +0 -7666
  250. package/src/validation/view-predicates/deployments.ts +0 -56
@@ -1,1619 +0,0 @@
1
- import { LangiumDocument, GrammarAST, MaybePromise, ReferenceDescription, AstNode, Reference, AstNodeDescription, MultiMap, DiagnosticInfo, DefaultNameProvider, CstNode, DefaultScopeComputation, PrecomputedScopes, DefaultScopeProvider, ReferenceInfo, Scope, LangiumDocuments, Stream, Cancellation, Disposable, URI, DefaultWorkspaceManager, WorkspaceCache, DocumentCache, Module } from 'langium';
2
- import { CodeLensProvider, DefaultCompletionProvider, CompletionContext, CompletionAcceptor, DefaultDocumentHighlightProvider, DocumentLinkProvider, DocumentSymbolProvider, NodeKindProvider as NodeKindProvider$1, AstNodeHoverProvider, AbstractSemanticTokenProvider, SemanticTokenAcceptor, LangiumSharedServices, DefaultWorkspaceSymbolProvider, LangiumServices, PartialLangiumServices, DefaultSharedModuleContext } from 'langium/lsp';
3
- import { CodeLensParams, CancellationToken, CodeLens, DocumentHighlight, DocumentLinkParams, DocumentLink, WorkspaceFolder } from 'vscode-languageserver';
4
- import { Diagnostic, DocumentSymbol, SymbolKind, Hover, Location, Range, TextEdit, CompletionItemKind } from 'vscode-languageserver-types';
5
- import * as c4 from '@likec4/core';
6
- import { Fqn, ViewId } from '@likec4/core';
7
- import { SetRequired, ValueOf, ConditionalPick } from 'type-fest';
8
- import { ChangeViewRequestParams } from '../protocol.mjs';
9
- import { URI as URI$1 } from 'vscode-uri';
10
- import * as _likec4_log from '@likec4/log';
11
- import { LogLevels } from '@likec4/log';
12
-
13
- declare class LikeC4CodeLensProvider implements CodeLensProvider {
14
- private services;
15
- constructor(services: LikeC4Services);
16
- provideCodeLens(doc: LangiumDocument, _params: CodeLensParams, cancelToken?: CancellationToken): Promise<CodeLens[] | undefined>;
17
- }
18
-
19
- declare class LikeC4CompletionProvider extends DefaultCompletionProvider {
20
- readonly completionOptions: {
21
- triggerCharacters: string[];
22
- };
23
- protected completionForKeyword(context: CompletionContext, keyword: GrammarAST.Keyword, acceptor: CompletionAcceptor): MaybePromise<void>;
24
- }
25
-
26
- declare class LikeC4DocumentHighlightProvider extends DefaultDocumentHighlightProvider {
27
- /**
28
- * Override this method to determine the highlight kind of the given reference.
29
- */
30
- protected createDocumentHighlight(reference: ReferenceDescription): DocumentHighlight;
31
- }
32
-
33
- declare class LikeC4DocumentLinkProvider implements DocumentLinkProvider {
34
- private services;
35
- constructor(services: LikeC4Services);
36
- getDocumentLinks(doc: LangiumDocument, _params: DocumentLinkParams): MaybePromise<DocumentLink[]>;
37
- resolveLink(doc: LangiumDocument, link: string): string;
38
- relativeLink(doc: LangiumDocument, link: string): string | null;
39
- }
40
-
41
- /******************************************************************************
42
- * This file was generated by langium-cli 3.3.0.
43
- * DO NOT EDIT MANUALLY!
44
- ******************************************************************************/
45
-
46
- type ArrowType = 'crow' | 'diamond' | 'dot' | 'none' | 'normal' | 'odiamond' | 'odot' | 'onormal' | 'open' | 'vee';
47
- type BorderStyleValue = 'none' | LineOptions;
48
- type CustomColorId = 'element' | 'model' | ArrowType | ElementShape | LineOptions | string;
49
- type CustomColorValue = string;
50
- type DeploymentElement = DeployedInstance | DeploymentNode;
51
- declare const DeploymentElement = "DeploymentElement";
52
- type DeploymentElementExpression = DeploymentRefExpression | WildcardExpression;
53
- declare const DeploymentElementExpression = "DeploymentElementExpression";
54
- type DeploymentExpression = DeploymentElementExpression | DeploymentRelationExpression;
55
- declare const DeploymentExpression = "DeploymentExpression";
56
- type DeploymentReferenceable = DeployedInstance | DeploymentNode | Element;
57
- declare const DeploymentReferenceable = "DeploymentReferenceable";
58
- type DeploymentRelationExpression = DirectedDeploymentRelationExpression | InOutDeploymentRelationExpression | IncomingDeploymentRelationExpression | OutgoingDeploymentRelationExpression;
59
- declare const DeploymentRelationExpression = "DeploymentRelationExpression";
60
- type DeploymentViewRule = DeploymentViewRulePredicate | DeploymentViewRuleStyle | ViewRuleAutoLayout;
61
- declare const DeploymentViewRule = "DeploymentViewRule";
62
- type DynamicViewRule = DynamicViewGlobalPredicateRef | DynamicViewIncludePredicate | ViewRuleAutoLayout | ViewRuleStyleOrGlobalRef;
63
- declare const DynamicViewRule = "DynamicViewRule";
64
- type ElementExpression = ElementDescedantsExpression | ElementKindExpression | ElementRef | ElementTagExpression | ExpandElementExpression | WildcardExpression;
65
- declare const ElementExpression = "ElementExpression";
66
- type ElementPredicate = ElementPredicateOrWhere | ElementPredicateWith;
67
- declare const ElementPredicate = "ElementPredicate";
68
- type ElementPredicateOrWhere = ElementExpression | ElementPredicateWhere;
69
- declare const ElementPredicateOrWhere = "ElementPredicateOrWhere";
70
- type ElementProperty = ElementStringProperty | ElementStyleProperty | IconProperty | LinkProperty | MetadataProperty;
71
- declare const ElementProperty = "ElementProperty";
72
- type ElementShape = 'browser' | 'cylinder' | 'mobile' | 'person' | 'queue' | 'rectangle' | 'storage';
73
- type FqnReferenceable = DeploymentReferenceable | Element | ExtendElement;
74
- declare const FqnReferenceable = "FqnReferenceable";
75
- type IconId = string;
76
- type Id = 'deployment' | 'element' | 'group' | 'model' | 'node' | ArrowType | ElementShape | LineOptions | ThemeColor | string;
77
- type LikeC4View = DeploymentView | DynamicView | ElementView;
78
- declare const LikeC4View = "LikeC4View";
79
- type LineOptions = 'dashed' | 'dotted' | 'solid';
80
- type MetadataProperty = MetadataBody;
81
- declare const MetadataProperty = "MetadataProperty";
82
- type Predicate = ElementPredicate | RelationPredicate;
83
- declare const Predicate = "Predicate";
84
- type RelationExpression = DirectedRelationExpression | InOutRelationExpression | IncomingRelationExpression | OutgoingRelationExpression;
85
- declare const RelationExpression = "RelationExpression";
86
- type RelationPredicate = RelationPredicateOrWhere | RelationPredicateWith;
87
- declare const RelationPredicate = "RelationPredicate";
88
- type RelationPredicateOrWhere = RelationExpression | RelationPredicateWhere;
89
- declare const RelationPredicateOrWhere = "RelationPredicateOrWhere";
90
- type RelationProperty = LinkProperty | MetadataProperty | RelationNavigateToProperty | RelationStringProperty | RelationStyleProperty;
91
- declare const RelationProperty = "RelationProperty";
92
- type RelationshipStyleProperty = ArrowProperty | ColorProperty | LineProperty;
93
- declare const RelationshipStyleProperty = "RelationshipStyleProperty";
94
- type StringProperty = ElementStringProperty | MetadataAttribute | NotationProperty | NotesProperty | RelationStringProperty | SpecificationElementStringProperty | SpecificationRelationshipStringProperty | ViewStringProperty;
95
- declare const StringProperty = "StringProperty";
96
- type StyleProperty = BorderProperty | ColorProperty | IconProperty | OpacityProperty | ShapeProperty;
97
- declare const StyleProperty = "StyleProperty";
98
- type ThemeColor = 'amber' | 'blue' | 'gray' | 'green' | 'indigo' | 'muted' | 'primary' | 'red' | 'secondary' | 'sky' | 'slate';
99
- type Uri = string;
100
- type ViewLayoutDirection = 'BottomTop' | 'LeftRight' | 'RightLeft' | 'TopBottom';
101
- type ViewProperty = LinkProperty | ViewStringProperty;
102
- declare const ViewProperty = "ViewProperty";
103
- type ViewRule = ViewRuleAutoLayout | ViewRuleGlobalPredicateRef | ViewRuleGroup | ViewRulePredicate | ViewRuleStyleOrGlobalRef;
104
- declare const ViewRule = "ViewRule";
105
- type ViewRulePredicate = ExcludePredicate | IncludePredicate;
106
- declare const ViewRulePredicate = "ViewRulePredicate";
107
- type ViewRuleStyleOrGlobalRef = ViewRuleGlobalStyle | ViewRuleStyle;
108
- declare const ViewRuleStyleOrGlobalRef = "ViewRuleStyleOrGlobalRef";
109
- type WhereElement = WhereElementKind | WhereElementTag;
110
- declare const WhereElement = "WhereElement";
111
- type WhereElementExpression = WhereBinaryExpression | WhereElement | WhereElementNegation;
112
- declare const WhereElementExpression = "WhereElementExpression";
113
- type WhereExpression = WhereElementExpression | WhereRelationExpression;
114
- declare const WhereExpression = "WhereExpression";
115
- type WhereKindEqual = WhereElementKind | WhereRelationKind;
116
- declare const WhereKindEqual = "WhereKindEqual";
117
- type WhereRelation = WhereRelationKind | WhereRelationTag;
118
- declare const WhereRelation = "WhereRelation";
119
- type WhereRelationExpression = WhereBinaryExpression | WhereRelation | WhereRelationNegation;
120
- declare const WhereRelationExpression = "WhereRelationExpression";
121
- type WhereTagEqual = WhereElementTag | WhereRelationTag;
122
- declare const WhereTagEqual = "WhereTagEqual";
123
- interface ArrowProperty extends AstNode {
124
- readonly $container: CustomRelationProperties | RelationStyleProperty | SpecificationRelationshipKind;
125
- readonly $type: 'ArrowProperty';
126
- key: 'head' | 'tail';
127
- value: ArrowType;
128
- }
129
- declare const ArrowProperty = "ArrowProperty";
130
- interface BorderProperty extends AstNode {
131
- readonly $container: CustomElementProperties | DeploymentViewRuleStyle | ElementStyleProperty | GlobalStyle | ViewRuleGroup | ViewRuleStyle;
132
- readonly $type: 'BorderProperty';
133
- key: 'border';
134
- value: BorderStyleValue;
135
- }
136
- declare const BorderProperty = "BorderProperty";
137
- interface ColorProperty extends AstNode {
138
- readonly $container: CustomElementProperties | CustomRelationProperties | DeploymentViewRuleStyle | ElementStyleProperty | GlobalStyle | RelationStyleProperty | SpecificationRelationshipKind | ViewRuleGroup | ViewRuleStyle;
139
- readonly $type: 'ColorProperty';
140
- customColor?: Reference<CustomColor>;
141
- key: 'color';
142
- themeColor?: ThemeColor;
143
- }
144
- declare const ColorProperty = "ColorProperty";
145
- interface CustomColor extends AstNode {
146
- readonly $container: SpecificationColor;
147
- readonly $type: 'CustomColor';
148
- name: CustomColorId;
149
- }
150
- declare const CustomColor = "CustomColor";
151
- interface CustomElementProperties extends AstNode {
152
- readonly $container: ElementPredicateWith;
153
- readonly $type: 'CustomElementProperties';
154
- props: Array<ElementStringProperty | NavigateToProperty | NotationProperty | StyleProperty>;
155
- }
156
- declare const CustomElementProperties = "CustomElementProperties";
157
- interface CustomRelationProperties extends AstNode {
158
- readonly $container: DynamicViewStep | RelationPredicateWith;
159
- readonly $type: 'CustomRelationProperties';
160
- props: Array<NotationProperty | NotesProperty | RelationNavigateToProperty | RelationStringProperty | RelationshipStyleProperty>;
161
- }
162
- declare const CustomRelationProperties = "CustomRelationProperties";
163
- interface DeployedInstance extends AstNode {
164
- readonly $container: DeploymentNodeBody;
165
- readonly $type: 'DeployedInstance';
166
- body?: DeployedInstanceBody;
167
- element: ElementRef;
168
- name?: Id;
169
- title?: string;
170
- }
171
- declare const DeployedInstance = "DeployedInstance";
172
- interface DeployedInstanceBody extends AstNode {
173
- readonly $container: DeployedInstance;
174
- readonly $type: 'DeployedInstanceBody';
175
- props: Array<ElementProperty>;
176
- tags?: Tags;
177
- }
178
- declare const DeployedInstanceBody = "DeployedInstanceBody";
179
- interface DeploymentExpressionIterator extends AstNode {
180
- readonly $container: DeploymentExpressionIterator | DeploymentViewRuleStyle;
181
- readonly $type: 'DeploymentExpressionIterator';
182
- prev?: DeploymentExpressionIterator;
183
- value: DeploymentElementExpression;
184
- }
185
- declare const DeploymentExpressionIterator = "DeploymentExpressionIterator";
186
- interface DeploymentNode extends AstNode {
187
- readonly $container: DeploymentNodeBody | ModelDeployments;
188
- readonly $type: 'DeploymentNode';
189
- body?: DeploymentNodeBody;
190
- kind: Reference<DeploymentNodeKind>;
191
- name: Id;
192
- title?: string;
193
- }
194
- declare const DeploymentNode = "DeploymentNode";
195
- interface DeploymentNodeBody extends AstNode {
196
- readonly $container: DeploymentNode;
197
- readonly $type: 'DeploymentNodeBody';
198
- elements: Array<DeployedInstance | DeploymentNode | DeploymentRelation>;
199
- props: Array<ElementProperty>;
200
- tags?: Tags;
201
- }
202
- declare const DeploymentNodeBody = "DeploymentNodeBody";
203
- interface DeploymentNodeKind extends AstNode {
204
- readonly $container: SpecificationDeploymentNodeKind;
205
- readonly $type: 'DeploymentNodeKind';
206
- name: Id;
207
- }
208
- declare const DeploymentNodeKind = "DeploymentNodeKind";
209
- interface DeploymentRef extends AstNode {
210
- readonly $container: DeploymentRef | DeploymentRefExpression | DeploymentRelation;
211
- readonly $type: 'DeploymentRef';
212
- parent?: DeploymentRef;
213
- value: Reference<DeploymentReferenceable>;
214
- }
215
- declare const DeploymentRef = "DeploymentRef";
216
- interface DeploymentRefExpression extends AstNode {
217
- readonly $container: DeploymentExpressionIterator | DeploymentViewRulePredicateExpression | DirectedDeploymentRelationExpression | IncomingDeploymentRelationExpression | OutgoingDeploymentRelationExpression;
218
- readonly $type: 'DeploymentRefExpression';
219
- ref: DeploymentRef;
220
- selector?: string;
221
- }
222
- declare const DeploymentRefExpression = "DeploymentRefExpression";
223
- interface DeploymentRelation extends AstNode {
224
- readonly $container: DeploymentNodeBody | ModelDeployments;
225
- readonly $type: 'DeploymentRelation';
226
- body?: DeploymentRelationBody;
227
- kind?: Reference<RelationshipKind>;
228
- source: DeploymentRef;
229
- tags?: Tags;
230
- target: DeploymentRef;
231
- technology?: string;
232
- title?: string;
233
- }
234
- declare const DeploymentRelation = "DeploymentRelation";
235
- interface DeploymentRelationBody extends AstNode {
236
- readonly $container: DeploymentRelation;
237
- readonly $type: 'DeploymentRelationBody';
238
- props: Array<RelationProperty>;
239
- tags?: Tags;
240
- }
241
- declare const DeploymentRelationBody = "DeploymentRelationBody";
242
- interface DeploymentView extends AstNode {
243
- readonly $container: ModelViews;
244
- readonly $type: 'DeploymentView';
245
- body?: DeploymentViewBody;
246
- name: Id;
247
- }
248
- declare const DeploymentView = "DeploymentView";
249
- interface DeploymentViewBody extends AstNode {
250
- readonly $container: DeploymentView;
251
- readonly $type: 'DeploymentViewBody';
252
- props: Array<ViewProperty>;
253
- rules: Array<DeploymentViewRule>;
254
- tags?: Tags;
255
- }
256
- declare const DeploymentViewBody = "DeploymentViewBody";
257
- interface DeploymentViewRulePredicate extends AstNode {
258
- readonly $container: DeploymentViewBody;
259
- readonly $type: 'DeploymentViewRulePredicate';
260
- expr: DeploymentViewRulePredicateExpression;
261
- isInclude: boolean;
262
- }
263
- declare const DeploymentViewRulePredicate = "DeploymentViewRulePredicate";
264
- interface DeploymentViewRulePredicateExpression extends AstNode {
265
- readonly $container: DeploymentViewRulePredicate | DeploymentViewRulePredicateExpression;
266
- readonly $type: 'DeploymentViewRulePredicateExpression';
267
- prev?: DeploymentViewRulePredicateExpression;
268
- value: DeploymentExpression;
269
- }
270
- declare const DeploymentViewRulePredicateExpression = "DeploymentViewRulePredicateExpression";
271
- interface DeploymentViewRuleStyle extends AstNode {
272
- readonly $container: DeploymentViewBody;
273
- readonly $type: 'DeploymentViewRuleStyle';
274
- props: Array<NotationProperty | StyleProperty>;
275
- target: DeploymentExpressionIterator;
276
- }
277
- declare const DeploymentViewRuleStyle = "DeploymentViewRuleStyle";
278
- interface DirectedDeploymentRelationExpression extends AstNode {
279
- readonly $container: DeploymentViewRulePredicateExpression;
280
- readonly $type: 'DirectedDeploymentRelationExpression';
281
- source: OutgoingDeploymentRelationExpression;
282
- target: DeploymentElementExpression;
283
- }
284
- declare const DirectedDeploymentRelationExpression = "DirectedDeploymentRelationExpression";
285
- interface DirectedRelationExpression extends AstNode {
286
- readonly $container: Predicates | RelationPredicateWhere | RelationPredicateWith;
287
- readonly $type: 'DirectedRelationExpression';
288
- source: OutgoingRelationExpression;
289
- target: ElementExpression;
290
- }
291
- declare const DirectedRelationExpression = "DirectedRelationExpression";
292
- interface DynamicView extends AstNode {
293
- readonly $container: ModelViews;
294
- readonly $type: 'DynamicView';
295
- body?: DynamicViewBody;
296
- name: Id;
297
- }
298
- declare const DynamicView = "DynamicView";
299
- interface DynamicViewBody extends AstNode {
300
- readonly $container: DynamicView;
301
- readonly $type: 'DynamicViewBody';
302
- props: Array<ViewProperty>;
303
- rules: Array<DynamicViewRule>;
304
- steps: Array<DynamicViewParallelSteps | DynamicViewStep>;
305
- tags?: Tags;
306
- }
307
- declare const DynamicViewBody = "DynamicViewBody";
308
- interface DynamicViewGlobalPredicateRef extends AstNode {
309
- readonly $container: DynamicViewBody;
310
- readonly $type: 'DynamicViewGlobalPredicateRef';
311
- predicate: Reference<GlobalDynamicPredicateGroup>;
312
- }
313
- declare const DynamicViewGlobalPredicateRef = "DynamicViewGlobalPredicateRef";
314
- interface DynamicViewIncludePredicate extends AstNode {
315
- readonly $container: DynamicViewBody | GlobalDynamicPredicateGroup;
316
- readonly $type: 'DynamicViewIncludePredicate';
317
- predicates: DynamicViewPredicateIterator;
318
- }
319
- declare const DynamicViewIncludePredicate = "DynamicViewIncludePredicate";
320
- interface DynamicViewParallelSteps extends AstNode {
321
- readonly $container: DynamicViewBody;
322
- readonly $type: 'DynamicViewParallelSteps';
323
- steps: Array<DynamicViewStep>;
324
- }
325
- declare const DynamicViewParallelSteps = "DynamicViewParallelSteps";
326
- interface DynamicViewPredicateIterator extends AstNode {
327
- readonly $container: DynamicViewIncludePredicate | DynamicViewPredicateIterator;
328
- readonly $type: 'DynamicViewPredicateIterator';
329
- prev?: DynamicViewPredicateIterator;
330
- value: ElementPredicate;
331
- }
332
- declare const DynamicViewPredicateIterator = "DynamicViewPredicateIterator";
333
- interface DynamicViewRef extends AstNode {
334
- readonly $container: RelationNavigateToProperty;
335
- readonly $type: 'DynamicViewRef';
336
- view: Reference<DynamicView>;
337
- }
338
- declare const DynamicViewRef = "DynamicViewRef";
339
- interface DynamicViewStep extends AstNode {
340
- readonly $container: DynamicViewBody | DynamicViewParallelSteps;
341
- readonly $type: 'DynamicViewStep';
342
- custom?: CustomRelationProperties;
343
- isBackward: boolean;
344
- kind?: Reference<RelationshipKind>;
345
- source: ElementRef;
346
- target: ElementRef;
347
- title?: string;
348
- }
349
- declare const DynamicViewStep = "DynamicViewStep";
350
- interface Element extends AstNode {
351
- readonly $container: ElementBody | ExtendElementBody | Model;
352
- readonly $type: 'Element';
353
- body?: ElementBody;
354
- kind: Reference<ElementKind>;
355
- name: Id;
356
- props: Array<string>;
357
- }
358
- declare const Element = "Element";
359
- interface ElementBody extends AstNode {
360
- readonly $container: Element;
361
- readonly $type: 'ElementBody';
362
- elements: Array<Element | Relation>;
363
- props: Array<ElementProperty>;
364
- tags?: Tags;
365
- }
366
- declare const ElementBody = "ElementBody";
367
- interface ElementDescedantsExpression extends AstNode {
368
- readonly $container: DirectedRelationExpression | DynamicViewPredicateIterator | ElementExpressionsIterator | ElementPredicateWhere | ElementPredicateWith | IncomingRelationExpression | OutgoingRelationExpression | Predicates;
369
- readonly $type: 'ElementDescedantsExpression';
370
- parent: ElementRef;
371
- suffix: string;
372
- }
373
- declare const ElementDescedantsExpression = "ElementDescedantsExpression";
374
- interface ElementExpressionsIterator extends AstNode {
375
- readonly $container: ElementExpressionsIterator | GlobalStyle | ViewRuleStyle;
376
- readonly $type: 'ElementExpressionsIterator';
377
- prev?: ElementExpressionsIterator;
378
- value: ElementExpression;
379
- }
380
- declare const ElementExpressionsIterator = "ElementExpressionsIterator";
381
- interface ElementKind extends AstNode {
382
- readonly $container: SpecificationElementKind;
383
- readonly $type: 'ElementKind';
384
- name: Id;
385
- }
386
- declare const ElementKind = "ElementKind";
387
- interface ElementKindExpression extends AstNode {
388
- readonly $container: DirectedRelationExpression | DynamicViewPredicateIterator | ElementExpressionsIterator | ElementPredicateWhere | ElementPredicateWith | IncomingRelationExpression | OutgoingRelationExpression | Predicates;
389
- readonly $type: 'ElementKindExpression';
390
- isEqual: boolean;
391
- kind?: Reference<ElementKind>;
392
- }
393
- declare const ElementKindExpression = "ElementKindExpression";
394
- interface ElementPredicateWhere extends AstNode {
395
- readonly $container: DynamicViewPredicateIterator | ElementPredicateWith | Predicates;
396
- readonly $type: 'ElementPredicateWhere';
397
- subject: ElementExpression;
398
- where?: WhereElementExpression;
399
- }
400
- declare const ElementPredicateWhere = "ElementPredicateWhere";
401
- interface ElementPredicateWith extends AstNode {
402
- readonly $container: DynamicViewPredicateIterator | Predicates;
403
- readonly $type: 'ElementPredicateWith';
404
- custom?: CustomElementProperties;
405
- subject: ElementPredicateOrWhere;
406
- }
407
- declare const ElementPredicateWith = "ElementPredicateWith";
408
- interface ElementRef extends AstNode {
409
- readonly $container: DeployedInstance | DirectedRelationExpression | DynamicViewPredicateIterator | DynamicViewStep | ElementDescedantsExpression | ElementExpressionsIterator | ElementPredicateWhere | ElementPredicateWith | ElementRef | ElementView | ExpandElementExpression | IncomingRelationExpression | OutgoingRelationExpression | Predicates | Relation;
410
- readonly $type: 'ElementRef';
411
- el: Reference<Element>;
412
- parent?: ElementRef;
413
- }
414
- declare const ElementRef = "ElementRef";
415
- interface ElementStringProperty extends AstNode {
416
- readonly $container: CustomElementProperties | DeployedInstanceBody | DeploymentNodeBody | ElementBody;
417
- readonly $type: 'ElementStringProperty';
418
- key: 'description' | 'technology' | 'title';
419
- value: string;
420
- }
421
- declare const ElementStringProperty = "ElementStringProperty";
422
- interface ElementStyleProperty extends AstNode {
423
- readonly $container: DeployedInstanceBody | DeploymentNodeBody | ElementBody | SpecificationDeploymentNodeKind | SpecificationElementKind;
424
- readonly $type: 'ElementStyleProperty';
425
- key: 'style';
426
- props: Array<StyleProperty>;
427
- }
428
- declare const ElementStyleProperty = "ElementStyleProperty";
429
- interface ElementTagExpression extends AstNode {
430
- readonly $container: DirectedRelationExpression | DynamicViewPredicateIterator | ElementExpressionsIterator | ElementPredicateWhere | ElementPredicateWith | IncomingRelationExpression | OutgoingRelationExpression | Predicates;
431
- readonly $type: 'ElementTagExpression';
432
- isEqual: boolean;
433
- tag?: Reference<Tag>;
434
- }
435
- declare const ElementTagExpression = "ElementTagExpression";
436
- interface ElementView extends AstNode {
437
- readonly $container: ModelViews;
438
- readonly $type: 'ElementView';
439
- body?: ElementViewBody;
440
- extends?: ElementViewRef;
441
- name?: Id;
442
- viewOf?: ElementRef;
443
- }
444
- declare const ElementView = "ElementView";
445
- interface ElementViewBody extends AstNode {
446
- readonly $container: ElementView;
447
- readonly $type: 'ElementViewBody';
448
- props: Array<ViewProperty>;
449
- rules: Array<ViewRule>;
450
- tags?: Tags;
451
- }
452
- declare const ElementViewBody = "ElementViewBody";
453
- interface ElementViewRef extends AstNode {
454
- readonly $container: ElementView;
455
- readonly $type: 'ElementViewRef';
456
- view: Reference<ElementView>;
457
- }
458
- declare const ElementViewRef = "ElementViewRef";
459
- interface ExcludePredicate extends AstNode {
460
- readonly $container: ElementViewBody | GlobalPredicateGroup | ViewRuleGroup;
461
- readonly $type: 'ExcludePredicate';
462
- predicates: Predicates;
463
- }
464
- declare const ExcludePredicate = "ExcludePredicate";
465
- interface ExpandElementExpression extends AstNode {
466
- readonly $container: DirectedRelationExpression | DynamicViewPredicateIterator | ElementExpressionsIterator | ElementPredicateWhere | ElementPredicateWith | IncomingRelationExpression | OutgoingRelationExpression | Predicates;
467
- readonly $type: 'ExpandElementExpression';
468
- expand: ElementRef;
469
- }
470
- declare const ExpandElementExpression = "ExpandElementExpression";
471
- interface ExtendElement extends AstNode {
472
- readonly $container: Model;
473
- readonly $type: 'ExtendElement';
474
- body: ExtendElementBody;
475
- element: FqnElementRef;
476
- }
477
- declare const ExtendElement = "ExtendElement";
478
- interface ExtendElementBody extends AstNode {
479
- readonly $container: ExtendElement;
480
- readonly $type: 'ExtendElementBody';
481
- elements: Array<Element | Relation>;
482
- }
483
- declare const ExtendElementBody = "ExtendElementBody";
484
- interface FqnElementRef extends AstNode {
485
- readonly $container: ExtendElement | FqnElementRef;
486
- readonly $type: 'FqnElementRef';
487
- el: Reference<Element>;
488
- parent?: FqnElementRef;
489
- }
490
- declare const FqnElementRef = "FqnElementRef";
491
- interface GlobalDynamicPredicateGroup extends AstNode {
492
- readonly $container: Globals;
493
- readonly $type: 'GlobalDynamicPredicateGroup';
494
- name: string;
495
- predicates: Array<DynamicViewIncludePredicate>;
496
- }
497
- declare const GlobalDynamicPredicateGroup = "GlobalDynamicPredicateGroup";
498
- interface GlobalPredicateGroup extends AstNode {
499
- readonly $container: Globals;
500
- readonly $type: 'GlobalPredicateGroup';
501
- name: string;
502
- predicates: Array<ViewRulePredicate>;
503
- }
504
- declare const GlobalPredicateGroup = "GlobalPredicateGroup";
505
- interface Globals extends AstNode {
506
- readonly $container: LikeC4Grammar;
507
- readonly $type: 'Globals';
508
- name: 'global';
509
- predicates: Array<GlobalDynamicPredicateGroup | GlobalPredicateGroup>;
510
- styles: Array<GlobalStyle | GlobalStyleGroup>;
511
- }
512
- declare const Globals = "Globals";
513
- interface GlobalStyle extends AstNode {
514
- readonly $container: Globals;
515
- readonly $type: 'GlobalStyle';
516
- id: GlobalStyleId;
517
- props: Array<NotationProperty | StyleProperty>;
518
- target: ElementExpressionsIterator;
519
- }
520
- declare const GlobalStyle = "GlobalStyle";
521
- interface GlobalStyleGroup extends AstNode {
522
- readonly $container: Globals;
523
- readonly $type: 'GlobalStyleGroup';
524
- id: GlobalStyleId;
525
- styles: Array<ViewRuleStyle>;
526
- }
527
- declare const GlobalStyleGroup = "GlobalStyleGroup";
528
- interface GlobalStyleId extends AstNode {
529
- readonly $container: GlobalStyle | GlobalStyleGroup;
530
- readonly $type: 'GlobalStyleId';
531
- name: string;
532
- }
533
- declare const GlobalStyleId = "GlobalStyleId";
534
- interface IconProperty extends AstNode {
535
- readonly $container: CustomElementProperties | DeployedInstanceBody | DeploymentNodeBody | DeploymentViewRuleStyle | ElementBody | ElementStyleProperty | GlobalStyle | ViewRuleStyle;
536
- readonly $type: 'IconProperty';
537
- key: 'icon';
538
- libicon?: Reference<LibIcon>;
539
- value?: 'none' | Uri;
540
- }
541
- declare const IconProperty = "IconProperty";
542
- interface IncludePredicate extends AstNode {
543
- readonly $container: ElementViewBody | GlobalPredicateGroup | ViewRuleGroup;
544
- readonly $type: 'IncludePredicate';
545
- predicates: Predicates;
546
- }
547
- declare const IncludePredicate = "IncludePredicate";
548
- interface IncomingDeploymentRelationExpression extends AstNode {
549
- readonly $container: DeploymentViewRulePredicateExpression | InOutDeploymentRelationExpression;
550
- readonly $type: 'IncomingDeploymentRelationExpression';
551
- to: DeploymentElementExpression;
552
- }
553
- declare const IncomingDeploymentRelationExpression = "IncomingDeploymentRelationExpression";
554
- interface IncomingRelationExpression extends AstNode {
555
- readonly $container: InOutRelationExpression | Predicates | RelationPredicateWhere | RelationPredicateWith;
556
- readonly $type: 'IncomingRelationExpression';
557
- to: ElementExpression;
558
- }
559
- declare const IncomingRelationExpression = "IncomingRelationExpression";
560
- interface InOutDeploymentRelationExpression extends AstNode {
561
- readonly $container: DeploymentViewRulePredicateExpression;
562
- readonly $type: 'InOutDeploymentRelationExpression';
563
- inout: IncomingDeploymentRelationExpression;
564
- }
565
- declare const InOutDeploymentRelationExpression = "InOutDeploymentRelationExpression";
566
- interface InOutRelationExpression extends AstNode {
567
- readonly $container: Predicates | RelationPredicateWhere | RelationPredicateWith;
568
- readonly $type: 'InOutRelationExpression';
569
- inout: IncomingRelationExpression;
570
- }
571
- declare const InOutRelationExpression = "InOutRelationExpression";
572
- interface LibIcon extends AstNode {
573
- readonly $container: LikeC4Lib;
574
- readonly $type: 'LibIcon';
575
- name: IconId;
576
- }
577
- declare const LibIcon = "LibIcon";
578
- interface LikeC4Grammar extends AstNode {
579
- readonly $type: 'LikeC4Grammar';
580
- deployments: Array<ModelDeployments>;
581
- globals: Array<Globals>;
582
- likec4lib: Array<LikeC4Lib>;
583
- models: Array<Model>;
584
- specifications: Array<SpecificationRule>;
585
- views: Array<ModelViews>;
586
- }
587
- declare const LikeC4Grammar = "LikeC4Grammar";
588
- interface LikeC4Lib extends AstNode {
589
- readonly $container: LikeC4Grammar;
590
- readonly $type: 'LikeC4Lib';
591
- icons: Array<LibIcon>;
592
- }
593
- declare const LikeC4Lib = "LikeC4Lib";
594
- interface LineProperty extends AstNode {
595
- readonly $container: CustomRelationProperties | RelationStyleProperty | SpecificationRelationshipKind;
596
- readonly $type: 'LineProperty';
597
- key: 'line';
598
- value: LineOptions;
599
- }
600
- declare const LineProperty = "LineProperty";
601
- interface LinkProperty extends AstNode {
602
- readonly $container: DeployedInstanceBody | DeploymentNodeBody | DeploymentRelationBody | DeploymentViewBody | DynamicViewBody | ElementBody | ElementViewBody | RelationBody;
603
- readonly $type: 'LinkProperty';
604
- key: 'link';
605
- title?: string;
606
- value: Uri;
607
- }
608
- declare const LinkProperty = "LinkProperty";
609
- interface MetadataAttribute extends AstNode {
610
- readonly $container: MetadataBody;
611
- readonly $type: 'MetadataAttribute';
612
- key: string;
613
- value: string;
614
- }
615
- declare const MetadataAttribute = "MetadataAttribute";
616
- interface MetadataBody extends AstNode {
617
- readonly $container: DeployedInstanceBody | DeploymentNodeBody | DeploymentRelationBody | ElementBody | RelationBody;
618
- readonly $type: 'MetadataBody';
619
- props: Array<MetadataAttribute>;
620
- }
621
- declare const MetadataBody = "MetadataBody";
622
- interface Model extends AstNode {
623
- readonly $container: LikeC4Grammar;
624
- readonly $type: 'Model';
625
- elements: Array<Element | ExtendElement | Relation>;
626
- name: 'model';
627
- }
628
- declare const Model = "Model";
629
- interface ModelDeployments extends AstNode {
630
- readonly $container: LikeC4Grammar;
631
- readonly $type: 'ModelDeployments';
632
- elements: Array<DeploymentNode | DeploymentRelation>;
633
- name: 'deployment';
634
- }
635
- declare const ModelDeployments = "ModelDeployments";
636
- interface ModelViews extends AstNode {
637
- readonly $container: LikeC4Grammar;
638
- readonly $type: 'ModelViews';
639
- name: 'views';
640
- styles: Array<ViewRuleStyleOrGlobalRef>;
641
- views: Array<LikeC4View>;
642
- }
643
- declare const ModelViews = "ModelViews";
644
- interface NavigateToProperty extends AstNode {
645
- readonly $container: CustomElementProperties;
646
- readonly $type: 'NavigateToProperty';
647
- key: 'navigateTo';
648
- value: ViewRef;
649
- }
650
- declare const NavigateToProperty = "NavigateToProperty";
651
- interface NotationProperty extends AstNode {
652
- readonly $container: CustomElementProperties | CustomRelationProperties | DeploymentViewRuleStyle | GlobalStyle | ViewRuleStyle;
653
- readonly $type: 'NotationProperty';
654
- key: 'notation';
655
- value: string;
656
- }
657
- declare const NotationProperty = "NotationProperty";
658
- interface NotesProperty extends AstNode {
659
- readonly $container: CustomRelationProperties;
660
- readonly $type: 'NotesProperty';
661
- key: 'notes';
662
- value: string;
663
- }
664
- declare const NotesProperty = "NotesProperty";
665
- interface OpacityProperty extends AstNode {
666
- readonly $container: CustomElementProperties | DeploymentViewRuleStyle | ElementStyleProperty | GlobalStyle | ViewRuleGroup | ViewRuleStyle;
667
- readonly $type: 'OpacityProperty';
668
- key: 'opacity';
669
- value: string;
670
- }
671
- declare const OpacityProperty = "OpacityProperty";
672
- interface OutgoingDeploymentRelationExpression extends AstNode {
673
- readonly $container: DeploymentViewRulePredicateExpression | DirectedDeploymentRelationExpression;
674
- readonly $type: 'OutgoingDeploymentRelationExpression';
675
- from: DeploymentElementExpression;
676
- isBidirectional: boolean;
677
- kind?: Reference<RelationshipKind>;
678
- }
679
- declare const OutgoingDeploymentRelationExpression = "OutgoingDeploymentRelationExpression";
680
- interface OutgoingRelationExpression extends AstNode {
681
- readonly $container: DirectedRelationExpression | Predicates | RelationPredicateWhere | RelationPredicateWith;
682
- readonly $type: 'OutgoingRelationExpression';
683
- from: ElementExpression;
684
- isBidirectional: boolean;
685
- kind?: Reference<RelationshipKind>;
686
- }
687
- declare const OutgoingRelationExpression = "OutgoingRelationExpression";
688
- interface Predicates extends AstNode {
689
- readonly $container: ExcludePredicate | IncludePredicate | Predicates;
690
- readonly $type: 'Predicates';
691
- prev?: Predicates;
692
- value: Predicate;
693
- }
694
- declare const Predicates = "Predicates";
695
- interface Relation extends AstNode {
696
- readonly $container: ElementBody | ExtendElementBody | Model;
697
- readonly $type: 'Relation';
698
- body?: RelationBody;
699
- kind?: Reference<RelationshipKind>;
700
- source?: ElementRef;
701
- tags?: Tags;
702
- target: ElementRef;
703
- technology?: string;
704
- title?: string;
705
- }
706
- declare const Relation = "Relation";
707
- interface RelationBody extends AstNode {
708
- readonly $container: Relation;
709
- readonly $type: 'RelationBody';
710
- props: Array<RelationProperty>;
711
- tags?: Tags;
712
- }
713
- declare const RelationBody = "RelationBody";
714
- interface RelationNavigateToProperty extends AstNode {
715
- readonly $container: CustomRelationProperties | DeploymentRelationBody | RelationBody;
716
- readonly $type: 'RelationNavigateToProperty';
717
- key: 'navigateTo';
718
- value: DynamicViewRef;
719
- }
720
- declare const RelationNavigateToProperty = "RelationNavigateToProperty";
721
- interface RelationPredicateWhere extends AstNode {
722
- readonly $container: Predicates | RelationPredicateWith;
723
- readonly $type: 'RelationPredicateWhere';
724
- subject: RelationExpression;
725
- where?: WhereRelationExpression;
726
- }
727
- declare const RelationPredicateWhere = "RelationPredicateWhere";
728
- interface RelationPredicateWith extends AstNode {
729
- readonly $container: Predicates;
730
- readonly $type: 'RelationPredicateWith';
731
- custom?: CustomRelationProperties;
732
- subject: RelationPredicateOrWhere;
733
- }
734
- declare const RelationPredicateWith = "RelationPredicateWith";
735
- interface RelationshipKind extends AstNode {
736
- readonly $container: SpecificationRelationshipKind;
737
- readonly $type: 'RelationshipKind';
738
- name: Id;
739
- }
740
- declare const RelationshipKind = "RelationshipKind";
741
- interface RelationStringProperty extends AstNode {
742
- readonly $container: CustomRelationProperties | DeploymentRelationBody | RelationBody;
743
- readonly $type: 'RelationStringProperty';
744
- key: 'description' | 'technology' | 'title';
745
- value: string;
746
- }
747
- declare const RelationStringProperty = "RelationStringProperty";
748
- interface RelationStyleProperty extends AstNode {
749
- readonly $container: DeploymentRelationBody | RelationBody;
750
- readonly $type: 'RelationStyleProperty';
751
- key: 'style';
752
- props: Array<RelationshipStyleProperty>;
753
- }
754
- declare const RelationStyleProperty = "RelationStyleProperty";
755
- interface ShapeProperty extends AstNode {
756
- readonly $container: CustomElementProperties | DeploymentViewRuleStyle | ElementStyleProperty | GlobalStyle | ViewRuleStyle;
757
- readonly $type: 'ShapeProperty';
758
- key: 'shape';
759
- value: ElementShape;
760
- }
761
- declare const ShapeProperty = "ShapeProperty";
762
- interface SpecificationColor extends AstNode {
763
- readonly $container: SpecificationRule;
764
- readonly $type: 'SpecificationColor';
765
- color: CustomColorValue;
766
- name: CustomColor;
767
- }
768
- declare const SpecificationColor = "SpecificationColor";
769
- interface SpecificationDeploymentNodeKind extends AstNode {
770
- readonly $container: SpecificationRule;
771
- readonly $type: 'SpecificationDeploymentNodeKind';
772
- kind: DeploymentNodeKind;
773
- props: Array<ElementStyleProperty | SpecificationElementStringProperty>;
774
- }
775
- declare const SpecificationDeploymentNodeKind = "SpecificationDeploymentNodeKind";
776
- interface SpecificationElementKind extends AstNode {
777
- readonly $container: SpecificationRule;
778
- readonly $type: 'SpecificationElementKind';
779
- kind: ElementKind;
780
- props: Array<ElementStyleProperty | SpecificationElementStringProperty>;
781
- }
782
- declare const SpecificationElementKind = "SpecificationElementKind";
783
- interface SpecificationElementStringProperty extends AstNode {
784
- readonly $container: SpecificationDeploymentNodeKind | SpecificationElementKind;
785
- readonly $type: 'SpecificationElementStringProperty';
786
- key: 'notation' | 'technology';
787
- value: string;
788
- }
789
- declare const SpecificationElementStringProperty = "SpecificationElementStringProperty";
790
- interface SpecificationRelationshipKind extends AstNode {
791
- readonly $container: SpecificationRule;
792
- readonly $type: 'SpecificationRelationshipKind';
793
- kind: RelationshipKind;
794
- props: Array<RelationshipStyleProperty | SpecificationRelationshipStringProperty>;
795
- }
796
- declare const SpecificationRelationshipKind = "SpecificationRelationshipKind";
797
- interface SpecificationRelationshipStringProperty extends AstNode {
798
- readonly $container: SpecificationRelationshipKind;
799
- readonly $type: 'SpecificationRelationshipStringProperty';
800
- key: 'notation' | 'technology';
801
- value: string;
802
- }
803
- declare const SpecificationRelationshipStringProperty = "SpecificationRelationshipStringProperty";
804
- interface SpecificationRule extends AstNode {
805
- readonly $container: LikeC4Grammar;
806
- readonly $type: 'SpecificationRule';
807
- colors: Array<SpecificationColor>;
808
- deploymentNodes: Array<SpecificationDeploymentNodeKind>;
809
- elements: Array<SpecificationElementKind>;
810
- name: 'specification';
811
- relationships: Array<SpecificationRelationshipKind>;
812
- tags: Array<SpecificationTag>;
813
- }
814
- declare const SpecificationRule = "SpecificationRule";
815
- interface SpecificationTag extends AstNode {
816
- readonly $container: SpecificationRule;
817
- readonly $type: 'SpecificationTag';
818
- tag: Tag;
819
- }
820
- declare const SpecificationTag = "SpecificationTag";
821
- interface Tag extends AstNode {
822
- readonly $container: SpecificationTag;
823
- readonly $type: 'Tag';
824
- name: Id;
825
- }
826
- declare const Tag = "Tag";
827
- interface Tags extends AstNode {
828
- readonly $container: DeployedInstanceBody | DeploymentNodeBody | DeploymentRelation | DeploymentRelationBody | DeploymentViewBody | DynamicViewBody | ElementBody | ElementViewBody | Relation | RelationBody | Tags;
829
- readonly $type: 'Tags';
830
- prev?: Tags;
831
- values: Array<Reference<Tag>>;
832
- }
833
- declare const Tags = "Tags";
834
- interface ViewRef extends AstNode {
835
- readonly $container: NavigateToProperty;
836
- readonly $type: 'ViewRef';
837
- view: Reference<LikeC4View>;
838
- }
839
- declare const ViewRef = "ViewRef";
840
- interface ViewRuleAutoLayout extends AstNode {
841
- readonly $container: DeploymentViewBody | DynamicViewBody | ElementViewBody;
842
- readonly $type: 'ViewRuleAutoLayout';
843
- direction: ViewLayoutDirection;
844
- nodeSep?: number;
845
- rankSep?: number;
846
- }
847
- declare const ViewRuleAutoLayout = "ViewRuleAutoLayout";
848
- interface ViewRuleGlobalPredicateRef extends AstNode {
849
- readonly $container: ElementViewBody;
850
- readonly $type: 'ViewRuleGlobalPredicateRef';
851
- predicate: Reference<GlobalPredicateGroup>;
852
- }
853
- declare const ViewRuleGlobalPredicateRef = "ViewRuleGlobalPredicateRef";
854
- interface ViewRuleGlobalStyle extends AstNode {
855
- readonly $container: DynamicViewBody | ElementViewBody | ModelViews;
856
- readonly $type: 'ViewRuleGlobalStyle';
857
- style: Reference<GlobalStyleId>;
858
- }
859
- declare const ViewRuleGlobalStyle = "ViewRuleGlobalStyle";
860
- interface ViewRuleGroup extends AstNode {
861
- readonly $container: ElementViewBody | ViewRuleGroup;
862
- readonly $type: 'ViewRuleGroup';
863
- groupRules: Array<ViewRuleGroup | ViewRulePredicate>;
864
- props: Array<BorderProperty | ColorProperty | OpacityProperty>;
865
- title?: string;
866
- }
867
- declare const ViewRuleGroup = "ViewRuleGroup";
868
- interface ViewRuleStyle extends AstNode {
869
- readonly $container: DynamicViewBody | ElementViewBody | GlobalStyleGroup | ModelViews;
870
- readonly $type: 'ViewRuleStyle';
871
- props: Array<NotationProperty | StyleProperty>;
872
- target: ElementExpressionsIterator;
873
- }
874
- declare const ViewRuleStyle = "ViewRuleStyle";
875
- interface ViewStringProperty extends AstNode {
876
- readonly $container: DeploymentViewBody | DynamicViewBody | ElementViewBody;
877
- readonly $type: 'ViewStringProperty';
878
- key: 'description' | 'title';
879
- value: string;
880
- }
881
- declare const ViewStringProperty = "ViewStringProperty";
882
- interface WhereBinaryExpression extends AstNode {
883
- readonly $container: ElementPredicateWhere | RelationPredicateWhere | WhereBinaryExpression | WhereElementNegation | WhereRelationNegation;
884
- readonly $type: 'WhereBinaryExpression';
885
- left: WhereElementExpression | WhereRelationExpression;
886
- operator: 'and' | 'or';
887
- right: WhereElementExpression | WhereRelationExpression;
888
- }
889
- declare const WhereBinaryExpression = "WhereBinaryExpression";
890
- interface WhereElementKind extends AstNode {
891
- readonly $container: ElementPredicateWhere | WhereBinaryExpression | WhereElementNegation;
892
- readonly $type: 'WhereElementKind';
893
- not: boolean;
894
- operator: 'is' | string;
895
- value?: Reference<ElementKind>;
896
- }
897
- declare const WhereElementKind = "WhereElementKind";
898
- interface WhereElementNegation extends AstNode {
899
- readonly $container: ElementPredicateWhere | WhereBinaryExpression | WhereElementNegation;
900
- readonly $type: 'WhereElementNegation';
901
- value: WhereElementExpression;
902
- }
903
- declare const WhereElementNegation = "WhereElementNegation";
904
- interface WhereElementTag extends AstNode {
905
- readonly $container: ElementPredicateWhere | WhereBinaryExpression | WhereElementNegation;
906
- readonly $type: 'WhereElementTag';
907
- not: boolean;
908
- operator: 'is' | string;
909
- value?: Reference<Tag>;
910
- }
911
- declare const WhereElementTag = "WhereElementTag";
912
- interface WhereRelationKind extends AstNode {
913
- readonly $container: RelationPredicateWhere | WhereBinaryExpression | WhereRelationNegation;
914
- readonly $type: 'WhereRelationKind';
915
- not: boolean;
916
- operator: 'is' | string;
917
- value?: Reference<RelationshipKind>;
918
- }
919
- declare const WhereRelationKind = "WhereRelationKind";
920
- interface WhereRelationNegation extends AstNode {
921
- readonly $container: RelationPredicateWhere | WhereBinaryExpression | WhereRelationNegation;
922
- readonly $type: 'WhereRelationNegation';
923
- value: WhereRelationExpression;
924
- }
925
- declare const WhereRelationNegation = "WhereRelationNegation";
926
- interface WhereRelationTag extends AstNode {
927
- readonly $container: RelationPredicateWhere | WhereBinaryExpression | WhereRelationNegation;
928
- readonly $type: 'WhereRelationTag';
929
- not: boolean;
930
- operator: 'is' | string;
931
- value?: Reference<Tag>;
932
- }
933
- declare const WhereRelationTag = "WhereRelationTag";
934
- interface WildcardExpression extends AstNode {
935
- readonly $container: DeploymentExpressionIterator | DeploymentViewRulePredicateExpression | DirectedDeploymentRelationExpression | DirectedRelationExpression | DynamicViewPredicateIterator | ElementExpressionsIterator | ElementPredicateWhere | ElementPredicateWith | IncomingDeploymentRelationExpression | IncomingRelationExpression | OutgoingDeploymentRelationExpression | OutgoingRelationExpression | Predicates;
936
- readonly $type: 'WildcardExpression';
937
- isWildcard: boolean;
938
- }
939
- declare const WildcardExpression = "WildcardExpression";
940
- type LikeC4AstType = {
941
- ArrowProperty: ArrowProperty;
942
- BorderProperty: BorderProperty;
943
- ColorProperty: ColorProperty;
944
- CustomColor: CustomColor;
945
- CustomElementProperties: CustomElementProperties;
946
- CustomRelationProperties: CustomRelationProperties;
947
- DeployedInstance: DeployedInstance;
948
- DeployedInstanceBody: DeployedInstanceBody;
949
- DeploymentElement: DeploymentElement;
950
- DeploymentElementExpression: DeploymentElementExpression;
951
- DeploymentExpression: DeploymentExpression;
952
- DeploymentExpressionIterator: DeploymentExpressionIterator;
953
- DeploymentNode: DeploymentNode;
954
- DeploymentNodeBody: DeploymentNodeBody;
955
- DeploymentNodeKind: DeploymentNodeKind;
956
- DeploymentRef: DeploymentRef;
957
- DeploymentRefExpression: DeploymentRefExpression;
958
- DeploymentReferenceable: DeploymentReferenceable;
959
- DeploymentRelation: DeploymentRelation;
960
- DeploymentRelationBody: DeploymentRelationBody;
961
- DeploymentRelationExpression: DeploymentRelationExpression;
962
- DeploymentView: DeploymentView;
963
- DeploymentViewBody: DeploymentViewBody;
964
- DeploymentViewRule: DeploymentViewRule;
965
- DeploymentViewRulePredicate: DeploymentViewRulePredicate;
966
- DeploymentViewRulePredicateExpression: DeploymentViewRulePredicateExpression;
967
- DeploymentViewRuleStyle: DeploymentViewRuleStyle;
968
- DirectedDeploymentRelationExpression: DirectedDeploymentRelationExpression;
969
- DirectedRelationExpression: DirectedRelationExpression;
970
- DynamicView: DynamicView;
971
- DynamicViewBody: DynamicViewBody;
972
- DynamicViewGlobalPredicateRef: DynamicViewGlobalPredicateRef;
973
- DynamicViewIncludePredicate: DynamicViewIncludePredicate;
974
- DynamicViewParallelSteps: DynamicViewParallelSteps;
975
- DynamicViewPredicateIterator: DynamicViewPredicateIterator;
976
- DynamicViewRef: DynamicViewRef;
977
- DynamicViewRule: DynamicViewRule;
978
- DynamicViewStep: DynamicViewStep;
979
- Element: Element;
980
- ElementBody: ElementBody;
981
- ElementDescedantsExpression: ElementDescedantsExpression;
982
- ElementExpression: ElementExpression;
983
- ElementExpressionsIterator: ElementExpressionsIterator;
984
- ElementKind: ElementKind;
985
- ElementKindExpression: ElementKindExpression;
986
- ElementPredicate: ElementPredicate;
987
- ElementPredicateOrWhere: ElementPredicateOrWhere;
988
- ElementPredicateWhere: ElementPredicateWhere;
989
- ElementPredicateWith: ElementPredicateWith;
990
- ElementProperty: ElementProperty;
991
- ElementRef: ElementRef;
992
- ElementStringProperty: ElementStringProperty;
993
- ElementStyleProperty: ElementStyleProperty;
994
- ElementTagExpression: ElementTagExpression;
995
- ElementView: ElementView;
996
- ElementViewBody: ElementViewBody;
997
- ElementViewRef: ElementViewRef;
998
- ExcludePredicate: ExcludePredicate;
999
- ExpandElementExpression: ExpandElementExpression;
1000
- ExtendElement: ExtendElement;
1001
- ExtendElementBody: ExtendElementBody;
1002
- FqnElementRef: FqnElementRef;
1003
- FqnReferenceable: FqnReferenceable;
1004
- GlobalDynamicPredicateGroup: GlobalDynamicPredicateGroup;
1005
- GlobalPredicateGroup: GlobalPredicateGroup;
1006
- GlobalStyle: GlobalStyle;
1007
- GlobalStyleGroup: GlobalStyleGroup;
1008
- GlobalStyleId: GlobalStyleId;
1009
- Globals: Globals;
1010
- IconProperty: IconProperty;
1011
- InOutDeploymentRelationExpression: InOutDeploymentRelationExpression;
1012
- InOutRelationExpression: InOutRelationExpression;
1013
- IncludePredicate: IncludePredicate;
1014
- IncomingDeploymentRelationExpression: IncomingDeploymentRelationExpression;
1015
- IncomingRelationExpression: IncomingRelationExpression;
1016
- LibIcon: LibIcon;
1017
- LikeC4Grammar: LikeC4Grammar;
1018
- LikeC4Lib: LikeC4Lib;
1019
- LikeC4View: LikeC4View;
1020
- LineProperty: LineProperty;
1021
- LinkProperty: LinkProperty;
1022
- MetadataAttribute: MetadataAttribute;
1023
- MetadataBody: MetadataBody;
1024
- MetadataProperty: MetadataProperty;
1025
- Model: Model;
1026
- ModelDeployments: ModelDeployments;
1027
- ModelViews: ModelViews;
1028
- NavigateToProperty: NavigateToProperty;
1029
- NotationProperty: NotationProperty;
1030
- NotesProperty: NotesProperty;
1031
- OpacityProperty: OpacityProperty;
1032
- OutgoingDeploymentRelationExpression: OutgoingDeploymentRelationExpression;
1033
- OutgoingRelationExpression: OutgoingRelationExpression;
1034
- Predicate: Predicate;
1035
- Predicates: Predicates;
1036
- Relation: Relation;
1037
- RelationBody: RelationBody;
1038
- RelationExpression: RelationExpression;
1039
- RelationNavigateToProperty: RelationNavigateToProperty;
1040
- RelationPredicate: RelationPredicate;
1041
- RelationPredicateOrWhere: RelationPredicateOrWhere;
1042
- RelationPredicateWhere: RelationPredicateWhere;
1043
- RelationPredicateWith: RelationPredicateWith;
1044
- RelationProperty: RelationProperty;
1045
- RelationStringProperty: RelationStringProperty;
1046
- RelationStyleProperty: RelationStyleProperty;
1047
- RelationshipKind: RelationshipKind;
1048
- RelationshipStyleProperty: RelationshipStyleProperty;
1049
- ShapeProperty: ShapeProperty;
1050
- SpecificationColor: SpecificationColor;
1051
- SpecificationDeploymentNodeKind: SpecificationDeploymentNodeKind;
1052
- SpecificationElementKind: SpecificationElementKind;
1053
- SpecificationElementStringProperty: SpecificationElementStringProperty;
1054
- SpecificationRelationshipKind: SpecificationRelationshipKind;
1055
- SpecificationRelationshipStringProperty: SpecificationRelationshipStringProperty;
1056
- SpecificationRule: SpecificationRule;
1057
- SpecificationTag: SpecificationTag;
1058
- StringProperty: StringProperty;
1059
- StyleProperty: StyleProperty;
1060
- Tag: Tag;
1061
- Tags: Tags;
1062
- ViewProperty: ViewProperty;
1063
- ViewRef: ViewRef;
1064
- ViewRule: ViewRule;
1065
- ViewRuleAutoLayout: ViewRuleAutoLayout;
1066
- ViewRuleGlobalPredicateRef: ViewRuleGlobalPredicateRef;
1067
- ViewRuleGlobalStyle: ViewRuleGlobalStyle;
1068
- ViewRuleGroup: ViewRuleGroup;
1069
- ViewRulePredicate: ViewRulePredicate;
1070
- ViewRuleStyle: ViewRuleStyle;
1071
- ViewRuleStyleOrGlobalRef: ViewRuleStyleOrGlobalRef;
1072
- ViewStringProperty: ViewStringProperty;
1073
- WhereBinaryExpression: WhereBinaryExpression;
1074
- WhereElement: WhereElement;
1075
- WhereElementExpression: WhereElementExpression;
1076
- WhereElementKind: WhereElementKind;
1077
- WhereElementNegation: WhereElementNegation;
1078
- WhereElementTag: WhereElementTag;
1079
- WhereExpression: WhereExpression;
1080
- WhereKindEqual: WhereKindEqual;
1081
- WhereRelation: WhereRelation;
1082
- WhereRelationExpression: WhereRelationExpression;
1083
- WhereRelationKind: WhereRelationKind;
1084
- WhereRelationNegation: WhereRelationNegation;
1085
- WhereRelationTag: WhereRelationTag;
1086
- WhereTagEqual: WhereTagEqual;
1087
- WildcardExpression: WildcardExpression;
1088
- };
1089
-
1090
- declare const idattr: unique symbol;
1091
- declare module './generated/ast' {
1092
- interface Element {
1093
- [idattr]?: c4.Fqn | undefined;
1094
- }
1095
- interface ElementView {
1096
- [idattr]?: c4.ViewId | undefined;
1097
- }
1098
- interface DynamicView {
1099
- [idattr]?: c4.ViewId | undefined;
1100
- }
1101
- interface DeploymentView {
1102
- [idattr]?: c4.ViewId | undefined;
1103
- }
1104
- interface DeploymentNode {
1105
- [idattr]?: c4.Fqn | undefined;
1106
- }
1107
- interface DeployedInstance {
1108
- [idattr]?: c4.Fqn | undefined;
1109
- }
1110
- }
1111
- type ParsedElementStyle = {
1112
- shape?: c4.ElementShape;
1113
- icon?: c4.IconUrl;
1114
- color?: c4.Color;
1115
- border?: c4.BorderStyle;
1116
- opacity?: number;
1117
- };
1118
- interface ParsedAstSpecification {
1119
- tags: Set<c4.Tag>;
1120
- elements: Record<c4.ElementKind, {
1121
- technology?: string;
1122
- notation?: string;
1123
- style: ParsedElementStyle;
1124
- }>;
1125
- relationships: Record<c4.RelationshipKind, {
1126
- technology?: string;
1127
- notation?: string;
1128
- color?: c4.Color;
1129
- line?: c4.RelationshipLineType;
1130
- head?: c4.RelationshipArrowType;
1131
- tail?: c4.RelationshipArrowType;
1132
- }>;
1133
- colors: Record<c4.CustomColor, {
1134
- color: c4.HexColorLiteral;
1135
- }>;
1136
- deployments: Record<c4.DeploymentNodeKind, c4.DeploymentNodeKindSpecification>;
1137
- }
1138
- interface ParsedAstElement {
1139
- id: c4.Fqn;
1140
- astPath: string;
1141
- kind: c4.ElementKind;
1142
- title: string;
1143
- description?: string;
1144
- technology?: string;
1145
- tags?: c4.NonEmptyArray<c4.Tag>;
1146
- links?: c4.NonEmptyArray<ParsedLink>;
1147
- style: ParsedElementStyle;
1148
- metadata?: {
1149
- [key: string]: string;
1150
- };
1151
- }
1152
- interface ParsedAstRelation {
1153
- id: c4.RelationId;
1154
- astPath: string;
1155
- source: c4.Fqn;
1156
- target: c4.Fqn;
1157
- kind?: c4.RelationshipKind;
1158
- tags?: c4.NonEmptyArray<c4.Tag>;
1159
- title: string;
1160
- description?: string;
1161
- technology?: string;
1162
- color?: c4.Color;
1163
- line?: c4.RelationshipLineType;
1164
- head?: c4.RelationshipArrowType;
1165
- tail?: c4.RelationshipArrowType;
1166
- links?: c4.NonEmptyArray<ParsedLink>;
1167
- navigateTo?: c4.ViewId;
1168
- metadata?: {
1169
- [key: string]: string;
1170
- };
1171
- }
1172
- type ParsedAstDeployment = c4.DeploymentElement;
1173
- declare namespace ParsedAstDeployment {
1174
- type Node = c4.DeploymentNode;
1175
- type Instance = c4.DeployedInstance;
1176
- }
1177
- type ParsedAstDeploymentRelation = c4.DeploymentRelation & {
1178
- astPath: string;
1179
- };
1180
- type ParsedAstGlobals = c4.ModelGlobals;
1181
- interface ParsedAstElementView {
1182
- __: 'element';
1183
- id: c4.ViewId;
1184
- viewOf?: c4.Fqn;
1185
- extends?: c4.ViewId;
1186
- astPath: string;
1187
- title: string | null;
1188
- description: string | null;
1189
- tags: c4.NonEmptyArray<c4.Tag> | null;
1190
- links: c4.NonEmptyArray<ParsedLink> | null;
1191
- rules: c4.ViewRule[];
1192
- manualLayout?: c4.ViewManualLayout;
1193
- }
1194
- interface ParsedAstDynamicView {
1195
- __: 'dynamic';
1196
- id: c4.ViewId;
1197
- astPath: string;
1198
- title: string | null;
1199
- description: string | null;
1200
- tags: c4.NonEmptyArray<c4.Tag> | null;
1201
- links: c4.NonEmptyArray<ParsedLink> | null;
1202
- steps: c4.DynamicViewStepOrParallel[];
1203
- rules: Array<c4.DynamicViewRule>;
1204
- manualLayout?: c4.ViewManualLayout;
1205
- }
1206
- interface ParsedAstDeploymentView {
1207
- __: 'deployment';
1208
- id: c4.ViewId;
1209
- astPath: string;
1210
- title: string | null;
1211
- description: string | null;
1212
- tags: c4.NonEmptyArray<c4.Tag> | null;
1213
- links: c4.NonEmptyArray<ParsedLink> | null;
1214
- rules: Array<c4.DeploymentViewRule>;
1215
- }
1216
- type ParsedAstView = ParsedAstElementView | ParsedAstDynamicView | ParsedAstDeploymentView;
1217
- interface ParsedLink {
1218
- title?: string;
1219
- url: string;
1220
- }
1221
- interface DocFqnIndexAstNodeDescription extends AstNodeDescription {
1222
- fqn: c4.Fqn;
1223
- }
1224
- interface DeploymentAstNodeDescription extends AstNodeDescription {
1225
- fqn: string;
1226
- }
1227
- type LikeC4AstNode = ValueOf<ConditionalPick<LikeC4AstType, AstNode>>;
1228
- type LikeC4DocumentDiagnostic = Diagnostic & DiagnosticInfo<LikeC4AstNode>;
1229
- interface LikeC4DocumentProps {
1230
- diagnostics?: Array<LikeC4DocumentDiagnostic>;
1231
- c4Specification?: ParsedAstSpecification;
1232
- c4Elements?: ParsedAstElement[];
1233
- c4Relations?: ParsedAstRelation[];
1234
- c4Globals?: ParsedAstGlobals;
1235
- c4Views?: ParsedAstView[];
1236
- c4Deployments?: ParsedAstDeployment[];
1237
- c4DeploymentRelations?: ParsedAstDeploymentRelation[];
1238
- c4fqnIndex?: MultiMap<c4.Fqn, DocFqnIndexAstNodeDescription>;
1239
- }
1240
- type LikeC4GrammarDocument = Omit<LangiumDocument<LikeC4Grammar>, 'diagnostics'>;
1241
- interface LikeC4LangiumDocument extends LikeC4GrammarDocument, LikeC4DocumentProps {
1242
- }
1243
- interface FqnIndexedDocument extends SetRequired<LikeC4LangiumDocument, 'c4fqnIndex'> {
1244
- }
1245
- interface ParsedLikeC4LangiumDocument extends LikeC4GrammarDocument, Required<LikeC4DocumentProps> {
1246
- }
1247
- type Guard<N extends AstNode> = (n: AstNode) => n is N;
1248
- type Guarded<G> = G extends Guard<infer N> ? N : never;
1249
- declare const isValidatableAstNode: (n: AstNode) => n is ArrowProperty | SpecificationRelationshipKind | DynamicViewStep | RelationPredicateWith | DynamicViewParallelSteps | DynamicView | ExcludePredicate | IncludePredicate | GlobalPredicateGroup | ViewRuleGroup | ElementView | Globals | DeploymentNode | Relation | Element | ExtendElement | SpecificationRule | BorderProperty | DeploymentViewRuleStyle | ElementStyleProperty | GlobalStyle | ViewRuleStyle | ElementPredicateWith | DynamicViewPredicateIterator | DynamicViewIncludePredicate | GlobalDynamicPredicateGroup | DeploymentView | SpecificationDeploymentNodeKind | SpecificationElementKind | DeployedInstance | GlobalStyleGroup | ColorProperty | SpecificationColor | DeploymentRefExpression | WildcardExpression | DirectedDeploymentRelationExpression | IncomingDeploymentRelationExpression | OutgoingDeploymentRelationExpression | DeploymentViewRulePredicate | InOutDeploymentRelationExpression | DirectedRelationExpression | ElementPredicateWhere | IncomingRelationExpression | OutgoingRelationExpression | RelationPredicateWhere | InOutRelationExpression | ViewRuleAutoLayout | DynamicViewGlobalPredicateRef | ViewRuleGlobalStyle | ElementDescedantsExpression | ElementKindExpression | ElementRef | ElementTagExpression | ExpandElementExpression | ElementStringProperty | IconProperty | LinkProperty | MetadataBody | LineProperty | MetadataAttribute | NavigateToProperty | NotationProperty | NotesProperty | OpacityProperty | RelationStringProperty | ShapeProperty | SpecificationElementStringProperty | SpecificationRelationshipStringProperty | SpecificationTag | ViewStringProperty | Tags | ViewRuleGlobalPredicateRef;
1250
- type ValidatableAstNode = Guarded<typeof isValidatableAstNode>;
1251
- declare function checksFromDiagnostics(doc: LikeC4LangiumDocument): {
1252
- isValid: (n: ValidatableAstNode) => boolean;
1253
- invalidNodes: WeakSet<object>;
1254
- };
1255
- type ChecksFromDiagnostics = ReturnType<typeof checksFromDiagnostics>;
1256
-
1257
- declare class LikeC4DocumentSymbolProvider implements DocumentSymbolProvider {
1258
- private services;
1259
- protected readonly nodeKindProvider: NodeKindProvider$1;
1260
- constructor(services: LikeC4Services);
1261
- getSymbols({ parseResult: { value: { specifications, models, views, likec4lib } } }: LikeC4LangiumDocument): MaybePromise<DocumentSymbol[]>;
1262
- protected getLikec4LibSymbol(astLib: LikeC4Lib): DocumentSymbol[];
1263
- protected getSpecSymbol(astSpec: SpecificationRule): DocumentSymbol[];
1264
- protected getModelSymbol(astModel: Model): DocumentSymbol[];
1265
- protected getElementsSymbol(el: Element | Relation | ExtendElement): DocumentSymbol[];
1266
- protected getExtendElementSymbol(astElement: ExtendElement): DocumentSymbol[];
1267
- protected getElementSymbol(astElement: Element): DocumentSymbol[];
1268
- protected getModelViewsSymbol(astViews: ModelViews): DocumentSymbol[];
1269
- protected getKindSymbol(astKind: SpecificationElementKind | SpecificationRelationshipKind): DocumentSymbol | null;
1270
- protected getTagSymbol(astTag: SpecificationTag): DocumentSymbol | null;
1271
- protected getLibIconSymbol(astTag: LibIcon): DocumentSymbol | null;
1272
- protected getViewSymbol(astView: LikeC4View): DocumentSymbol[];
1273
- protected symbolKind(node: AstNode): SymbolKind;
1274
- }
1275
-
1276
- declare class LikeC4HoverProvider extends AstNodeHoverProvider {
1277
- private parser;
1278
- private locator;
1279
- constructor(services: LikeC4Services);
1280
- protected getAstNodeHoverContent(node: AstNode): MaybePromise<Hover | undefined>;
1281
- }
1282
-
1283
- declare class LikeC4SemanticTokenProvider extends AbstractSemanticTokenProvider {
1284
- protected highlightElement(node: AstNode, acceptor: SemanticTokenAcceptor): void | undefined | 'prune';
1285
- private highlightNameAndKind;
1286
- private highlightView;
1287
- }
1288
-
1289
- declare class LikeC4NameProvider extends DefaultNameProvider {
1290
- protected services: LikeC4Services;
1291
- constructor(services: LikeC4Services);
1292
- getNameStrict(node: AstNode): string;
1293
- getName(node: AstNode): string | undefined;
1294
- getNameNode(node: AstNode): CstNode | undefined;
1295
- }
1296
-
1297
- type ElementsContainer = Model | ElementBody | ExtendElementBody;
1298
- type DeploymentsContainer = ModelDeployments | DeploymentNodeBody;
1299
- declare class LikeC4ScopeComputation extends DefaultScopeComputation {
1300
- constructor(services: LikeC4Services);
1301
- computeExports(document: LikeC4LangiumDocument, _cancelToken?: CancellationToken): Promise<AstNodeDescription[]>;
1302
- private exportViews;
1303
- private exportGlobals;
1304
- private exportModel;
1305
- private exportLibrary;
1306
- private exportSpecification;
1307
- private exportDeployments;
1308
- computeLocalScopes(document: LikeC4LangiumDocument, _cancelToken?: CancellationToken): Promise<PrecomputedScopes>;
1309
- protected processContainer(container: ElementsContainer, scopes: PrecomputedScopes, document: LikeC4LangiumDocument): AstNodeDescription[];
1310
- protected processDeployments(container: DeploymentsContainer, scopes: PrecomputedScopes, document: LikeC4LangiumDocument): AstNodeDescription[];
1311
- }
1312
-
1313
- declare class LikeC4ScopeProvider extends DefaultScopeProvider {
1314
- private deploymentsIndex;
1315
- private fqnIndex;
1316
- constructor(services: LikeC4Services);
1317
- private directChildrenOf;
1318
- private uniqueDescedants;
1319
- private scopeElementRef;
1320
- private scopeExtendElement;
1321
- private scopeElementView;
1322
- getScope(context: ReferenceInfo): Scope;
1323
- protected getScopeForDeploymentRef(container: DeploymentRef, context: ReferenceInfo): Scope;
1324
- protected computeScope(context: ReferenceInfo, referenceType?: string): Scope;
1325
- }
1326
-
1327
- declare class DeploymentsIndex {
1328
- private services;
1329
- protected Names: LikeC4NameProvider;
1330
- protected langiumDocuments: LangiumDocuments;
1331
- constructor(services: LikeC4Services);
1332
- private documents;
1333
- get(document: LikeC4LangiumDocument): DocumentDeploymentsIndex;
1334
- /**
1335
- * Nested elements (nodes/artifacts) of the node
1336
- * @param nodeName Name of the deployment node
1337
- * @returns Stream of artifacts
1338
- */
1339
- nested(node: DeploymentNode): Stream<DeploymentAstNodeDescription>;
1340
- byFqn(fqnName: string): Stream<DeploymentAstNodeDescription>;
1341
- getFqnName(node: DeploymentElement): Fqn;
1342
- createDocumentIndex(document: LikeC4LangiumDocument): DocumentDeploymentsIndex;
1343
- }
1344
- declare class DocumentDeploymentsIndex {
1345
- private _rootNodes;
1346
- /**
1347
- * Nested of a deployment node
1348
- */
1349
- private _nested;
1350
- /**
1351
- * All elements by FQN
1352
- */
1353
- private _byfqn;
1354
- static readonly EMPTY: DocumentDeploymentsIndex;
1355
- constructor(_rootNodes: Array<DeploymentAstNodeDescription>,
1356
- /**
1357
- * Nested of a deployment node
1358
- */
1359
- _nested: MultiMap<string, DeploymentAstNodeDescription>,
1360
- /**
1361
- * All elements by FQN
1362
- */
1363
- _byfqn: MultiMap<string, DeploymentAstNodeDescription>);
1364
- rootNodes(): readonly DeploymentAstNodeDescription[];
1365
- byFqn(fqnName: string): readonly DeploymentAstNodeDescription[];
1366
- /**
1367
- * Returns artifacts of a deployment node
1368
- * @param nodeName Name of the deployment node
1369
- * @returns Stream of artifacts
1370
- */
1371
- nested(nodeName: string): readonly DeploymentAstNodeDescription[];
1372
- /**
1373
- * Returns all deployment elements in the document,
1374
- * with unique combination "type and name"
1375
- */
1376
- unique(): readonly DeploymentAstNodeDescription[];
1377
- }
1378
-
1379
- declare function computeDocumentFqn(document: LikeC4LangiumDocument, services: LikeC4Services): void;
1380
-
1381
- interface FqnIndexEntry {
1382
- fqn: Fqn;
1383
- name: string;
1384
- el: Element;
1385
- doc: FqnIndexedDocument;
1386
- path: string;
1387
- }
1388
- declare class FqnIndex {
1389
- private services;
1390
- protected langiumDocuments: LangiumDocuments;
1391
- constructor(services: LikeC4Services);
1392
- get documents(): Stream<FqnIndexedDocument>;
1393
- private entries;
1394
- getFqn(el: Element): Fqn | null;
1395
- byFqn(fqn: Fqn): Stream<AstNodeDescription>;
1396
- directChildrenOf(parent: Fqn): Stream<AstNodeDescription>;
1397
- /**
1398
- * Returns descedant elements with unique names in the scope
1399
- */
1400
- uniqueDescedants(parent: Fqn): Stream<AstNodeDescription>;
1401
- }
1402
-
1403
- type ModelParsedListener$1 = (docs: URI[]) => void;
1404
- declare class LikeC4ModelBuilder {
1405
- private services;
1406
- private langiumDocuments;
1407
- private listeners;
1408
- constructor(services: LikeC4Services);
1409
- /**
1410
- * WARNING:
1411
- * This method is internal and should to be called only when all documents are known to be parsed.
1412
- * Otherwise, the model may be incomplete.
1413
- */
1414
- unsafeSyncBuildModel(): c4.ParsedLikeC4Model | null;
1415
- buildModel(cancelToken?: Cancellation.CancellationToken): Promise<c4.ParsedLikeC4Model | null>;
1416
- private previousViews;
1417
- /**
1418
- * WARNING:
1419
- * This method is internal and should to be called only when all documents are known to be parsed.
1420
- * Otherwise, the model may be incomplete.
1421
- */
1422
- unsafeSyncBuildComputedModel(model: c4.ParsedLikeC4Model): c4.ComputedLikeC4Model;
1423
- buildComputedModel(cancelToken?: Cancellation.CancellationToken): Promise<c4.ComputedLikeC4Model | null>;
1424
- computeView(viewId: ViewId, cancelToken?: Cancellation.CancellationToken): Promise<c4.ComputedView | null>;
1425
- onModelParsed(callback: ModelParsedListener$1): Disposable;
1426
- private documents;
1427
- private notifyListeners;
1428
- }
1429
-
1430
- declare class LikeC4ModelLocator {
1431
- private services;
1432
- private fqnIndex;
1433
- private deploymentsIndex;
1434
- private langiumDocuments;
1435
- constructor(services: LikeC4Services);
1436
- private documents;
1437
- getParsedElement(astNodeOrFqn: Element | c4.Fqn): ParsedAstElement | null;
1438
- locateElement(fqn: c4.Fqn, _prop?: string): Location | null;
1439
- locateDeploymentElement(fqn: c4.Fqn, _prop?: string): Location | null;
1440
- locateRelation(relationId: c4.RelationId): Location | null;
1441
- locateViewAst(viewId: c4.ViewId): {
1442
- doc: ParsedLikeC4LangiumDocument;
1443
- view: ParsedAstView;
1444
- viewAst: LikeC4View;
1445
- };
1446
- locateView(viewId: c4.ViewId): Location | null;
1447
- }
1448
-
1449
- type ModelParsedListener = () => void;
1450
- type IsValidFn = ChecksFromDiagnostics['isValid'];
1451
- declare class LikeC4ModelParser {
1452
- private services;
1453
- private fqnIndex;
1454
- constructor(services: LikeC4Services);
1455
- parse(doc: LangiumDocument): ParsedLikeC4LangiumDocument;
1456
- protected parseLikeC4Document(_doc: FqnIndexedDocument): ParsedLikeC4LangiumDocument;
1457
- private parseSpecification;
1458
- private parseSpecificationDeploymentNodeKind;
1459
- private parseModel;
1460
- private parseElement;
1461
- private parseRelation;
1462
- private parseGlobal;
1463
- private parseAndStoreGlobalPredicateGroupOrDynamic;
1464
- private parseGlobalPredicateGroup;
1465
- private parseGlobalDynamicPredicateGroup;
1466
- private parseGlobalStyleOrGroup;
1467
- private parseViews;
1468
- private parseViewRulePredicate;
1469
- private parsePredicate;
1470
- private parseElementExpressionsIterator;
1471
- private parseElementPredicate;
1472
- private parseElementExpr;
1473
- private parseElementPredicateWith;
1474
- private parseElementPredicateWhere;
1475
- private parseRelationPredicate;
1476
- private parseRelationPredicateWhere;
1477
- private parseRelationPredicateWith;
1478
- private parseRelationExpr;
1479
- private parseViewRule;
1480
- private parseViewRuleGlobalPredicateRef;
1481
- private parseViewRuleStyleOrGlobalRef;
1482
- private parseViewRuleStyle;
1483
- private parseViewRuleGroup;
1484
- private parseRuleStyle;
1485
- private parseViewRuleGlobalStyle;
1486
- private parseViewManualLayout;
1487
- private parseDynamicParallelSteps;
1488
- private parseDynamicStep;
1489
- private parseElementView;
1490
- private parseDynamicElementView;
1491
- private parseDynamicViewRule;
1492
- private parseDynamicViewIncludePredicate;
1493
- private parseDeployment;
1494
- parseDeploymentNode(astNode: DeploymentNode, isValid: IsValidFn): ParsedAstDeployment.Node;
1495
- parseDeployedInstance(astNode: DeployedInstance, isValid: IsValidFn): ParsedAstDeployment.Instance;
1496
- parseDeploymentRelation(astNode: DeploymentRelation, isValid: IsValidFn): ParsedAstDeploymentRelation;
1497
- private parseDeploymentView;
1498
- private parseDeploymentViewRule;
1499
- private parseDeploymentViewRulePredicate;
1500
- private parseDeploymentElementExpression;
1501
- private parseDeploymentRelationExpression;
1502
- private parseDeploymentExpressionIterator;
1503
- private parseDeploymentDef;
1504
- protected parseDeploymentViewRuleStyle(astRule: DeploymentViewRuleStyle, isValid: IsValidFn): c4.DeploymentViewRuleStyle;
1505
- protected resolveFqn(node: FqnReferenceable): c4.Fqn;
1506
- private getAstNodePath;
1507
- private getMetadata;
1508
- private convertTags;
1509
- private convertLinks;
1510
- }
1511
-
1512
- declare class LikeC4ModelChanges {
1513
- private services;
1514
- private locator;
1515
- constructor(services: LikeC4Services);
1516
- applyChange(changeView: ChangeViewRequestParams): Promise<Location | null>;
1517
- protected convertToTextEdit({ viewId, change }: ChangeViewRequestParams): {
1518
- doc: ParsedLikeC4LangiumDocument;
1519
- modifiedRange: Range;
1520
- edits: TextEdit[];
1521
- };
1522
- }
1523
-
1524
- declare class Rpc implements Disposable {
1525
- private services;
1526
- private disposables;
1527
- constructor(services: LikeC4Services);
1528
- init(): void;
1529
- dispose(): void;
1530
- }
1531
-
1532
- declare class NodeKindProvider implements NodeKindProvider$1 {
1533
- private services;
1534
- constructor(services: LangiumSharedServices);
1535
- /**
1536
- * Returns a `SymbolKind` as used by `WorkspaceSymbolProvider` or `DocumentSymbolProvider`.
1537
- */
1538
- getSymbolKind(node: AstNode | AstNodeDescription): SymbolKind;
1539
- /**
1540
- * Returns a `CompletionItemKind` as used by the `CompletionProvider`.
1541
- */
1542
- getCompletionItemKind(node: AstNode | AstNodeDescription): CompletionItemKind;
1543
- }
1544
-
1545
- declare class LikeC4WorkspaceManager extends DefaultWorkspaceManager {
1546
- private documentFactory;
1547
- constructor(services: LangiumSharedServices);
1548
- /**
1549
- * Load all additional documents that shall be visible in the context of the given workspace
1550
- * folders and add them to the collector. This can be used to include built-in libraries of
1551
- * your language, which can be either loaded from provided files or constructed in memory.
1552
- */
1553
- protected loadAdditionalDocuments(folders: WorkspaceFolder[], collector: (document: LangiumDocument) => void): Promise<void>;
1554
- workspace(): WorkspaceFolder;
1555
- get workspaceUri(): URI$1;
1556
- get workspaceURL(): URL;
1557
- }
1558
-
1559
- declare class WorkspaceSymbolProvider extends DefaultWorkspaceSymbolProvider {
1560
- }
1561
-
1562
- interface LikeC4AddedSharedServices {
1563
- lsp: {
1564
- NodeKindProvider: NodeKindProvider;
1565
- WorkspaceSymbolProvider: WorkspaceSymbolProvider;
1566
- };
1567
- workspace: {
1568
- WorkspaceManager: LikeC4WorkspaceManager;
1569
- };
1570
- }
1571
- type LikeC4SharedServices = LangiumSharedServices & LikeC4AddedSharedServices;
1572
- /**
1573
- * Declaration of custom services - add your own service classes here.
1574
- */
1575
- interface LikeC4AddedServices {
1576
- WorkspaceCache: WorkspaceCache<string, any>;
1577
- DocumentCache: DocumentCache<string, any>;
1578
- Rpc: Rpc;
1579
- likec4: {
1580
- DeploymentsIndex: DeploymentsIndex;
1581
- FqnIndex: FqnIndex;
1582
- ModelParser: LikeC4ModelParser;
1583
- ModelBuilder: LikeC4ModelBuilder;
1584
- ModelLocator: LikeC4ModelLocator;
1585
- ModelChanges: LikeC4ModelChanges;
1586
- };
1587
- lsp: {
1588
- CompletionProvider: LikeC4CompletionProvider;
1589
- DocumentHighlightProvider: LikeC4DocumentHighlightProvider;
1590
- DocumentSymbolProvider: LikeC4DocumentSymbolProvider;
1591
- SemanticTokenProvider: LikeC4SemanticTokenProvider;
1592
- HoverProvider: LikeC4HoverProvider;
1593
- CodeLensProvider: LikeC4CodeLensProvider;
1594
- DocumentLinkProvider: LikeC4DocumentLinkProvider;
1595
- };
1596
- references: {
1597
- NameProvider: LikeC4NameProvider;
1598
- ScopeComputation: LikeC4ScopeComputation;
1599
- ScopeProvider: LikeC4ScopeProvider;
1600
- };
1601
- shared?: LikeC4SharedServices;
1602
- }
1603
- type LikeC4Services = LangiumServices & LikeC4AddedServices;
1604
- declare const LikeC4Module: Module<LikeC4Services, PartialLangiumServices & LikeC4AddedServices>;
1605
- type LanguageServicesContext = Partial<DefaultSharedModuleContext>;
1606
- declare function createCustomLanguageServices<I1, I2, I3, I extends I1 & I2 & I3 & LikeC4Services>(context: LanguageServicesContext, module: Module<I, I1>, module2?: Module<I, I2>, module3?: Module<I, I3>): {
1607
- shared: LikeC4SharedServices;
1608
- likec4: I;
1609
- };
1610
- declare function createSharedServices(context?: LanguageServicesContext): LikeC4SharedServices;
1611
- declare function createLanguageServices(context?: LanguageServicesContext): {
1612
- shared: LikeC4SharedServices;
1613
- likec4: LikeC4Services;
1614
- };
1615
-
1616
- declare const logger: _likec4_log.ConsolaInstance;
1617
- declare function setLogLevel(level: keyof typeof LogLevels): void;
1618
-
1619
- export { DeploymentsIndex as D, type FqnIndexEntry as F, type IsValidFn as I, type LikeC4SharedServices as L, type ModelParsedListener as M, type LikeC4Services as a, createLanguageServices as b, createCustomLanguageServices as c, LikeC4Module as d, DocumentDeploymentsIndex as e, computeDocumentFqn as f, FqnIndex as g, LikeC4ModelBuilder as h, LikeC4ModelLocator as i, LikeC4ModelParser as j, type LikeC4AddedServices as k, type LanguageServicesContext as l, createSharedServices as m, logger as n, setLogLevel as s };