@mrclrchtr/supi-lsp 1.11.1 → 1.11.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +1 -1
  2. package/node_modules/@mrclrchtr/supi-code-runtime/package.json +2 -2
  3. package/node_modules/@mrclrchtr/supi-core/package.json +1 -1
  4. package/node_modules/vscode-jsonrpc/README.md +2 -17
  5. package/node_modules/vscode-jsonrpc/eslint.config.js +12 -0
  6. package/node_modules/vscode-jsonrpc/lib/browser/main.js +10 -3
  7. package/node_modules/vscode-jsonrpc/lib/browser/ril.d.ts +11 -1
  8. package/node_modules/vscode-jsonrpc/lib/browser/ril.js +58 -4
  9. package/node_modules/vscode-jsonrpc/lib/common/api.d.ts +3 -3
  10. package/node_modules/vscode-jsonrpc/lib/common/api.js +10 -4
  11. package/node_modules/vscode-jsonrpc/lib/common/cancellation.js +41 -5
  12. package/node_modules/vscode-jsonrpc/lib/common/connection.d.ts +76 -67
  13. package/node_modules/vscode-jsonrpc/lib/common/connection.js +217 -160
  14. package/node_modules/vscode-jsonrpc/lib/common/events.js +10 -3
  15. package/node_modules/vscode-jsonrpc/lib/common/is.js +7 -8
  16. package/node_modules/vscode-jsonrpc/lib/common/linkedMap.d.ts +3 -1
  17. package/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +17 -3
  18. package/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +5 -2
  19. package/node_modules/vscode-jsonrpc/lib/common/messageReader.js +52 -3
  20. package/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +45 -3
  21. package/node_modules/vscode-jsonrpc/lib/common/messages.js +147 -17
  22. package/node_modules/vscode-jsonrpc/lib/common/semaphore.js +8 -2
  23. package/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +4 -3
  24. package/node_modules/vscode-jsonrpc/lib/node/main.d.ts +0 -5
  25. package/node_modules/vscode-jsonrpc/lib/node/main.js +56 -24
  26. package/node_modules/vscode-jsonrpc/lib/node/ril.d.ts +0 -1
  27. package/node_modules/vscode-jsonrpc/lib/node/ril.js +3 -1
  28. package/node_modules/vscode-jsonrpc/package.json +20 -11
  29. package/node_modules/vscode-jsonrpc/tsconfig.tsbuildinfo +1 -0
  30. package/node_modules/vscode-languageserver-protocol/README.md +3 -3
  31. package/node_modules/vscode-languageserver-protocol/eslint.config.js +13 -0
  32. package/node_modules/vscode-languageserver-protocol/lib/browser/main.js +1 -2
  33. package/node_modules/vscode-languageserver-protocol/lib/common/api.d.ts +1 -1
  34. package/node_modules/vscode-languageserver-protocol/lib/common/api.js +1 -1
  35. package/node_modules/vscode-languageserver-protocol/lib/common/connection.d.ts +13 -13
  36. package/node_modules/vscode-languageserver-protocol/lib/common/connection.js +1 -2
  37. package/node_modules/vscode-languageserver-protocol/lib/common/messages.d.ts +7 -0
  38. package/node_modules/vscode-languageserver-protocol/lib/common/messages.js +38 -1
  39. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.d.ts +5 -2
  40. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js +3 -0
  41. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.d.ts +5 -3
  42. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js +3 -1
  43. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.d.ts +2 -1
  44. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js +1 -0
  45. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.d.ts +735 -361
  46. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.d.ts +3 -2
  47. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js +1 -0
  48. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.d.ts +12 -3
  49. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js +37 -1
  50. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.d.ts +8 -2
  51. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js +6 -0
  52. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.d.ts +34 -25
  53. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js +4 -1
  54. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.d.ts +3 -2
  55. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js +1 -0
  56. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.d.ts +15 -8
  57. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js +3 -0
  58. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.d.ts +3 -7
  59. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js +1 -1
  60. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.d.ts +7 -6
  61. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js +2 -0
  62. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.js +97 -9
  63. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.d.ts +3 -2
  64. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js +1 -0
  65. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.d.ts +3 -2
  66. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js +1 -0
  67. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.d.ts +91 -63
  68. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js +34 -1
  69. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.d.ts +2 -1
  70. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js +1 -0
  71. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.d.ts +3 -2
  72. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js +1 -0
  73. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.d.ts +44 -26
  74. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js +4 -0
  75. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.d.ts +4 -3
  76. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js +1 -0
  77. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.textDocumentContent.d.ts +93 -0
  78. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.textDocumentContent.js +33 -0
  79. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.d.ts +3 -2
  80. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js +2 -1
  81. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.d.ts +3 -2
  82. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js +1 -0
  83. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.d.ts +3 -1
  84. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js +2 -0
  85. package/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js +9 -10
  86. package/node_modules/vscode-languageserver-protocol/lib/node/main.d.ts +0 -1
  87. package/node_modules/vscode-languageserver-protocol/lib/node/main.js +1 -2
  88. package/node_modules/vscode-languageserver-protocol/metaModel.schema.json +84 -3
  89. package/node_modules/vscode-languageserver-protocol/package.json +21 -12
  90. package/node_modules/vscode-languageserver-types/README.md +1 -1
  91. package/node_modules/vscode-languageserver-types/eslint.config.js +13 -0
  92. package/node_modules/vscode-languageserver-types/lib/esm/main.d.ts +483 -107
  93. package/node_modules/vscode-languageserver-types/lib/esm/main.js +255 -62
  94. package/node_modules/vscode-languageserver-types/lib/umd/main.d.ts +483 -107
  95. package/node_modules/vscode-languageserver-types/lib/umd/main.js +201 -8
  96. package/node_modules/vscode-languageserver-types/package.json +9 -8
  97. package/package.json +4 -4
  98. package/src/config/types.ts +3 -0
  99. package/src/diagnostics/diagnostic-context.ts +2 -1
  100. package/src/diagnostics/diagnostic-display.ts +2 -1
  101. package/src/diagnostics/diagnostics.ts +2 -1
  102. package/src/diagnostics/stale-diagnostics.ts +3 -1
  103. package/src/diagnostics/suppression-diagnostics.ts +3 -1
  104. package/src/format.ts +30 -3
  105. package/src/ui/ui.ts +3 -1
  106. package/node_modules/vscode-jsonrpc/browser.d.ts +0 -6
  107. package/node_modules/vscode-jsonrpc/browser.js +0 -7
  108. package/node_modules/vscode-jsonrpc/node.cmd +0 -5
  109. package/node_modules/vscode-jsonrpc/node.d.ts +0 -6
  110. package/node_modules/vscode-jsonrpc/node.js +0 -7
  111. package/node_modules/vscode-languageserver-protocol/browser.d.ts +0 -6
  112. package/node_modules/vscode-languageserver-protocol/browser.js +0 -7
  113. package/node_modules/vscode-languageserver-protocol/node.cmd +0 -5
  114. package/node_modules/vscode-languageserver-protocol/node.d.ts +0 -6
  115. package/node_modules/vscode-languageserver-protocol/node.js +0 -7
  116. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/License.txt +0 -11
  117. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/README.md +0 -69
  118. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.d.ts +0 -6
  119. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.js +0 -7
  120. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.d.ts +0 -17
  121. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.js +0 -76
  122. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.d.ts +0 -12
  123. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.js +0 -156
  124. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.d.ts +0 -14
  125. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.js +0 -81
  126. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.d.ts +0 -32
  127. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.js +0 -96
  128. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.d.ts +0 -358
  129. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js +0 -1212
  130. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.d.ts +0 -9
  131. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.js +0 -16
  132. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/encoding.d.ts +0 -52
  133. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/encoding.js +0 -70
  134. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.d.ts +0 -39
  135. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.js +0 -128
  136. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.d.ts +0 -7
  137. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.js +0 -35
  138. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.d.ts +0 -53
  139. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +0 -398
  140. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.d.ts +0 -18
  141. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +0 -152
  142. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.d.ts +0 -77
  143. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.js +0 -197
  144. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.d.ts +0 -60
  145. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +0 -115
  146. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.d.ts +0 -369
  147. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.js +0 -306
  148. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.d.ts +0 -74
  149. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.js +0 -23
  150. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.d.ts +0 -10
  151. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.js +0 -68
  152. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.d.ts +0 -15
  153. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +0 -76
  154. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/main.d.ts +0 -63
  155. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/main.js +0 -257
  156. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/ril.d.ts +0 -13
  157. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/ril.js +0 -161
  158. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.cmd +0 -5
  159. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.d.ts +0 -6
  160. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.js +0 -7
  161. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/package.json +0 -45
  162. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/thirdpartynotices.txt +0 -16
  163. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/typings/thenable.d.ts +0 -5
@@ -1,6 +1,6 @@
1
- import { ProgressToken, RequestHandler, TraceValues } from 'vscode-jsonrpc';
2
- import { MessageDirection, ProtocolRequestType, ProtocolRequestType0, ProtocolNotificationType, ProtocolNotificationType0 } from './messages';
3
- import { Position, Range, Location, LocationLink, Diagnostic, Command, TextEdit, WorkspaceEdit, DocumentUri, TextDocumentIdentifier, VersionedTextDocumentIdentifier, TextDocumentItem, CompletionItem, CompletionList, Hover, SignatureHelp, Definition, ReferenceContext, DocumentHighlight, SymbolInformation, CodeLens, CodeActionContext, FormattingOptions, DocumentLink, MarkupKind, SymbolKind, CompletionItemKind, CodeAction, CodeActionKind, DocumentSymbol, CompletionItemTag, DiagnosticTag, SymbolTag, uinteger, integer, InsertTextMode, LSPAny, WorkspaceSymbol, URI, WorkspaceFolder } from 'vscode-languageserver-types';
1
+ import { ProgressToken, RequestHandler, TraceValue } from 'vscode-jsonrpc';
2
+ import { MessageDirection, ProtocolRequestType, ProtocolRequestType0, ProtocolNotificationType, ProtocolNotificationType0, CM } from './messages';
3
+ import { Position, Range, Location, LocationLink, Diagnostic, Command, TextEdit, WorkspaceEdit, WorkspaceEditMetadata, DocumentUri, TextDocumentIdentifier, VersionedTextDocumentIdentifier, TextDocumentItem, CompletionItem, CompletionList, Hover, SignatureHelp, Definition, ReferenceContext, DocumentHighlight, SymbolInformation, CodeLens, CodeActionContext, FormattingOptions, DocumentLink, MarkupKind, SymbolKind, CompletionItemKind, CodeAction, CodeActionKind, DocumentSymbol, CompletionItemTag, DiagnosticTag, SymbolTag, uinteger, integer, InsertTextMode, LSPAny, WorkspaceSymbol, URI, WorkspaceFolder, CodeActionTag } from 'vscode-languageserver-types';
4
4
  import { ImplementationRequest, ImplementationClientCapabilities, ImplementationOptions, ImplementationRegistrationOptions, ImplementationParams } from './protocol.implementation';
5
5
  import { TypeDefinitionRequest, TypeDefinitionClientCapabilities, TypeDefinitionOptions, TypeDefinitionRegistrationOptions, TypeDefinitionParams } from './protocol.typeDefinition';
6
6
  import { WorkspaceFoldersRequest, DidChangeWorkspaceFoldersNotification, DidChangeWorkspaceFoldersParams, WorkspaceFoldersChangeEvent, WorkspaceFoldersInitializeParams, WorkspaceFoldersServerCapabilities } from './protocol.workspaceFolder';
@@ -20,15 +20,85 @@ import { TypeHierarchyClientCapabilities, TypeHierarchyOptions, TypeHierarchyReg
20
20
  import { InlineValueClientCapabilities, InlineValueOptions, InlineValueRegistrationOptions, InlineValueWorkspaceClientCapabilities, InlineValueParams, InlineValueRequest, InlineValueRefreshRequest } from './protocol.inlineValue';
21
21
  import { InlayHintClientCapabilities, InlayHintOptions, InlayHintRegistrationOptions, InlayHintWorkspaceClientCapabilities, InlayHintParams, InlayHintRequest, InlayHintResolveRequest, InlayHintRefreshRequest } from './protocol.inlayHint';
22
22
  import { DiagnosticClientCapabilities, DiagnosticOptions, DiagnosticRegistrationOptions, DiagnosticServerCancellationData, DocumentDiagnosticParams, DocumentDiagnosticReportKind, FullDocumentDiagnosticReport, RelatedFullDocumentDiagnosticReport, UnchangedDocumentDiagnosticReport, RelatedUnchangedDocumentDiagnosticReport, DocumentDiagnosticReport, DocumentDiagnosticReportPartialResult, DocumentDiagnosticRequest, PreviousResultId, WorkspaceDiagnosticParams, WorkspaceFullDocumentDiagnosticReport, WorkspaceUnchangedDocumentDiagnosticReport, WorkspaceDocumentDiagnosticReport, WorkspaceDiagnosticReport, WorkspaceDiagnosticReportPartialResult, WorkspaceDiagnosticRequest, DiagnosticRefreshRequest, DiagnosticWorkspaceClientCapabilities } from './protocol.diagnostic';
23
- import { NotebookDocumentSyncClientCapabilities, NotebookCellKind, ExecutionSummary, NotebookCell, NotebookDocument, NotebookDocumentIdentifier, VersionedNotebookDocumentIdentifier, NotebookDocumentSyncOptions, NotebookDocumentSyncRegistrationOptions, NotebookDocumentSyncRegistrationType, DidOpenNotebookDocumentParams, DidOpenNotebookDocumentNotification, NotebookCellArrayChange, NotebookDocumentChangeEvent, DidChangeNotebookDocumentParams, DidChangeNotebookDocumentNotification, DidSaveNotebookDocumentParams, DidSaveNotebookDocumentNotification, DidCloseNotebookDocumentParams, DidCloseNotebookDocumentNotification } from './protocol.notebook';
23
+ import { NotebookDocumentSyncClientCapabilities, NotebookCellKind, ExecutionSummary, NotebookCell, NotebookDocument, NotebookDocumentIdentifier, VersionedNotebookDocumentIdentifier, NotebookDocumentSyncOptions, NotebookDocumentSyncRegistrationOptions, NotebookDocumentSyncRegistrationType, DidOpenNotebookDocumentParams, DidOpenNotebookDocumentNotification, NotebookCellArrayChange, NotebookDocumentChangeEvent, DidChangeNotebookDocumentParams, DidChangeNotebookDocumentNotification, DidSaveNotebookDocumentParams, DidSaveNotebookDocumentNotification, DidCloseNotebookDocumentParams, DidCloseNotebookDocumentNotification, NotebookDocumentFilterWithCells, NotebookDocumentFilterWithNotebook } from './protocol.notebook';
24
24
  import { InlineCompletionClientCapabilities, InlineCompletionOptions, InlineCompletionParams, InlineCompletionRegistrationOptions, InlineCompletionRequest } from './protocol.inlineCompletion';
25
+ import { TextDocumentContentClientCapabilities, TextDocumentContentOptions, TextDocumentContentRegistrationOptions, TextDocumentContentParams, TextDocumentContentResult, TextDocumentContentRequest, TextDocumentContentRefreshParams, TextDocumentContentRefreshRequest } from './protocol.textDocumentContent';
26
+ /**
27
+ * A document filter where `language` is required field.
28
+ *
29
+ * @since 3.18.0
30
+ */
31
+ export type TextDocumentFilterLanguage = {
32
+ /**
33
+ * A language id, like `typescript`.
34
+ */
35
+ language: string;
36
+ /**
37
+ * A Uri {@link Uri.scheme scheme}, like `file` or `untitled`.
38
+ */
39
+ scheme?: string;
40
+ /**
41
+ * A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples.
42
+ *
43
+ * @since 3.18.0 - support for relative patterns. Whether clients support
44
+ * relative patterns depends on the client capability
45
+ * `textDocuments.filters.relativePatternSupport`.
46
+ */
47
+ pattern?: GlobPattern;
48
+ };
49
+ /**
50
+ * A document filter where `scheme` is required field.
51
+ *
52
+ * @since 3.18.0
53
+ */
54
+ export type TextDocumentFilterScheme = {
55
+ /**
56
+ * A language id, like `typescript`.
57
+ */
58
+ language?: string;
59
+ /**
60
+ * A Uri {@link Uri.scheme scheme}, like `file` or `untitled`.
61
+ */
62
+ scheme: string;
63
+ /**
64
+ * A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples.
65
+ *
66
+ * @since 3.18.0 - support for relative patterns. Whether clients support
67
+ * relative patterns depends on the client capability
68
+ * `textDocuments.filters.relativePatternSupport`.
69
+ */
70
+ pattern?: GlobPattern;
71
+ };
72
+ /**
73
+ * A document filter where `pattern` is required field.
74
+ *
75
+ * @since 3.18.0
76
+ */
77
+ export type TextDocumentFilterPattern = {
78
+ /**
79
+ * A language id, like `typescript`.
80
+ */
81
+ language?: string;
82
+ /**
83
+ * A Uri {@link Uri.scheme scheme}, like `file` or `untitled`.
84
+ */
85
+ scheme?: string;
86
+ /**
87
+ * A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples.
88
+ *
89
+ * @since 3.18.0 - support for relative patterns. Whether clients support
90
+ * relative patterns depends on the client capability
91
+ * `textDocuments.filters.relativePatternSupport`.
92
+ */
93
+ pattern: GlobPattern;
94
+ };
25
95
  /**
26
96
  * A document filter denotes a document by different properties like
27
97
  * the {@link TextDocument.languageId language}, the {@link Uri.scheme scheme} of
28
98
  * its resource, or a glob-pattern that is applied to the {@link TextDocument.fileName path}.
29
99
  *
30
100
  * Glob patterns can have the following syntax:
31
- * - `*` to match one or more characters in a path segment
101
+ * - `*` to match zero or more characters in a path segment
32
102
  * - `?` to match on one character in a path segment
33
103
  * - `**` to match any number of path segments, including none
34
104
  * - `{}` to group sub patterns into an OR expression. (e.g. `**​/*.{ts,js}` matches all TypeScript and JavaScript files)
@@ -40,28 +110,7 @@ import { InlineCompletionClientCapabilities, InlineCompletionOptions, InlineComp
40
110
  *
41
111
  * @since 3.17.0
42
112
  */
43
- export type TextDocumentFilter = {
44
- /** A language id, like `typescript`. */
45
- language: string;
46
- /** A Uri {@link Uri.scheme scheme}, like `file` or `untitled`. */
47
- scheme?: string;
48
- /** A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples. */
49
- pattern?: string;
50
- } | {
51
- /** A language id, like `typescript`. */
52
- language?: string;
53
- /** A Uri {@link Uri.scheme scheme}, like `file` or `untitled`. */
54
- scheme: string;
55
- /** A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples. */
56
- pattern?: string;
57
- } | {
58
- /** A language id, like `typescript`. */
59
- language?: string;
60
- /** A Uri {@link Uri.scheme scheme}, like `file` or `untitled`. */
61
- scheme?: string;
62
- /** A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples. */
63
- pattern: string;
64
- };
113
+ export type TextDocumentFilter = TextDocumentFilterLanguage | TextDocumentFilterScheme | TextDocumentFilterPattern;
65
114
  /**
66
115
  * The TextDocumentFilter namespace provides helper functions to work with
67
116
  * {@link TextDocumentFilter} literals.
@@ -72,34 +121,70 @@ export declare namespace TextDocumentFilter {
72
121
  function is(value: any): value is TextDocumentFilter;
73
122
  }
74
123
  /**
75
- * A notebook document filter denotes a notebook document by
76
- * different properties. The properties will be match
77
- * against the notebook's URI (same as with documents)
124
+ * A notebook document filter where `notebookType` is required field.
78
125
  *
79
- * @since 3.17.0
126
+ * @since 3.18.0
80
127
  */
81
- export type NotebookDocumentFilter = {
82
- /** The type of the enclosing notebook. */
128
+ export type NotebookDocumentFilterNotebookType = {
129
+ /**
130
+ * The type of the enclosing notebook.
131
+ */
83
132
  notebookType: string;
84
- /** A Uri {@link Uri.scheme scheme}, like `file` or `untitled`. */
133
+ /**
134
+ * A Uri {@link Uri.scheme scheme}, like `file` or `untitled`.
135
+ */
85
136
  scheme?: string;
86
- /** A glob pattern. */
87
- pattern?: string;
88
- } | {
89
- /** The type of the enclosing notebook. */
137
+ /**
138
+ * A glob pattern.
139
+ */
140
+ pattern?: GlobPattern;
141
+ };
142
+ /**
143
+ * A notebook document filter where `scheme` is required field.
144
+ *
145
+ * @since 3.18.0
146
+ */
147
+ export type NotebookDocumentFilterScheme = {
148
+ /**
149
+ * The type of the enclosing notebook.
150
+ */
90
151
  notebookType?: string;
91
- /** A Uri {@link Uri.scheme scheme}, like `file` or `untitled`.*/
152
+ /**
153
+ * A Uri {@link Uri.scheme scheme}, like `file` or `untitled`.
154
+ */
92
155
  scheme: string;
93
- /** A glob pattern. */
94
- pattern?: string;
95
- } | {
96
- /** The type of the enclosing notebook. */
156
+ /**
157
+ * A glob pattern.
158
+ */
159
+ pattern?: GlobPattern;
160
+ };
161
+ /**
162
+ * A notebook document filter where `pattern` is required field.
163
+ *
164
+ * @since 3.18.0
165
+ */
166
+ export type NotebookDocumentFilterPattern = {
167
+ /**
168
+ * The type of the enclosing notebook.
169
+ */
97
170
  notebookType?: string;
98
- /** A Uri {@link Uri.scheme scheme}, like `file` or `untitled`. */
171
+ /**
172
+ * A Uri {@link Uri.scheme scheme}, like `file` or `untitled`.
173
+ */
99
174
  scheme?: string;
100
- /** A glob pattern. */
101
- pattern: string;
175
+ /**
176
+ * A glob pattern.
177
+ */
178
+ pattern: GlobPattern;
102
179
  };
180
+ /**
181
+ * A notebook document filter denotes a notebook document by
182
+ * different properties. The properties will be match
183
+ * against the notebook's URI (same as with documents)
184
+ *
185
+ * @since 3.17.0
186
+ */
187
+ export type NotebookDocumentFilter = NotebookDocumentFilterNotebookType | NotebookDocumentFilterScheme | NotebookDocumentFilterPattern;
103
188
  /**
104
189
  * The NotebookDocumentFilter namespace provides helper functions to work with
105
190
  * {@link NotebookDocumentFilter} literals.
@@ -144,7 +229,7 @@ export declare namespace NotebookCellTextDocumentFilter {
144
229
  * A document filter describes a top level text document or
145
230
  * a notebook cell document.
146
231
  *
147
- * @since 3.17.0 - proposed support for NotebookCellTextDocumentFilter.
232
+ * @since 3.17.0 - support for NotebookCellTextDocumentFilter.
148
233
  */
149
234
  export type DocumentFilter = TextDocumentFilter | NotebookCellTextDocumentFilter;
150
235
  /**
@@ -376,9 +461,14 @@ export interface WorkspaceClientCapabilities {
376
461
  * Capabilities specific to the folding range requests scoped to the workspace.
377
462
  *
378
463
  * @since 3.18.0
379
- * @proposed
380
464
  */
381
465
  foldingRange?: FoldingRangeWorkspaceClientCapabilities;
466
+ /**
467
+ * Capabilities specific to the `workspace/textDocumentContent` request.
468
+ *
469
+ * @since 3.18.0
470
+ */
471
+ textDocumentContent?: TextDocumentContentClientCapabilities;
382
472
  }
383
473
  /**
384
474
  * Text document specific client capabilities.
@@ -388,6 +478,12 @@ export interface TextDocumentClientCapabilities {
388
478
  * Defines which synchronization capabilities the client supports.
389
479
  */
390
480
  synchronization?: TextDocumentSyncClientCapabilities;
481
+ /**
482
+ * Defines which filters the client supports.
483
+ *
484
+ * @since 3.18.0
485
+ */
486
+ filters?: TextDocumentFilterClientCapabilities;
391
487
  /**
392
488
  * Capabilities specific to the `textDocument/completion` request.
393
489
  */
@@ -537,7 +633,6 @@ export interface TextDocumentClientCapabilities {
537
633
  * Client capabilities specific to inline completions.
538
634
  *
539
635
  * @since 3.18.0
540
- * @proposed
541
636
  */
542
637
  inlineCompletion?: InlineCompletionClientCapabilities;
543
638
  }
@@ -567,6 +662,15 @@ export interface WindowClientCapabilities {
567
662
  */
568
663
  showDocument?: ShowDocumentClientCapabilities;
569
664
  }
665
+ /**
666
+ * Regular Expression Engines
667
+ *
668
+ * @since 3.18.0
669
+ */
670
+ export declare namespace RegularExpressionEngineKind {
671
+ const ES2020: "ES2020";
672
+ }
673
+ export type RegularExpressionEngineKind = string;
570
674
  /**
571
675
  * Client capabilities specific to regular expressions.
572
676
  *
@@ -576,7 +680,7 @@ export interface RegularExpressionsClientCapabilities {
576
680
  /**
577
681
  * The engine's name.
578
682
  */
579
- engine: string;
683
+ engine: RegularExpressionEngineKind;
580
684
  /**
581
685
  * The engine's version.
582
686
  */
@@ -637,6 +741,21 @@ export declare namespace PositionEncodingKind {
637
741
  * @since 3.17.0
638
742
  */
639
743
  export type PositionEncodingKind = string;
744
+ /**
745
+ * @since 3.18.0
746
+ */
747
+ export type StaleRequestSupportOptions = {
748
+ /**
749
+ * The client will actively cancel the request.
750
+ */
751
+ cancel: boolean;
752
+ /**
753
+ * The list of requests for which the client
754
+ * will retry the request if it receives a
755
+ * response with error code `ContentModified`
756
+ */
757
+ retryOnContentModified: string[];
758
+ };
640
759
  /**
641
760
  * General client capabilities.
642
761
  *
@@ -651,18 +770,7 @@ export interface GeneralClientCapabilities {
651
770
  *
652
771
  * @since 3.17.0
653
772
  */
654
- staleRequestSupport?: {
655
- /**
656
- * The client will actively cancel the request.
657
- */
658
- cancel: boolean;
659
- /**
660
- * The list of requests for which the client
661
- * will retry the request if it receives a
662
- * response with error code `ContentModified`
663
- */
664
- retryOnContentModified: string[];
665
- };
773
+ staleRequestSupport?: StaleRequestSupportOptions;
666
774
  /**
667
775
  * Client capabilities specific to regular expressions.
668
776
  *
@@ -802,6 +910,31 @@ export declare namespace WorkDoneProgressOptions {
802
910
  workDoneProgress: boolean;
803
911
  };
804
912
  }
913
+ /**
914
+ * Defines workspace specific capabilities of the server.
915
+ *
916
+ * @since 3.18.0
917
+ */
918
+ export type WorkspaceOptions = {
919
+ /**
920
+ * The server supports workspace folder.
921
+ *
922
+ * @since 3.6.0
923
+ */
924
+ workspaceFolders?: WorkspaceFoldersServerCapabilities;
925
+ /**
926
+ * The server is interested in notifications/requests for operations on files.
927
+ *
928
+ * @since 3.16.0
929
+ */
930
+ fileOperations?: FileOperationOptions;
931
+ /**
932
+ * The server supports the `workspace/textDocumentContent` request.
933
+ *
934
+ * @since 3.18.0
935
+ */
936
+ textDocumentContent?: TextDocumentContentOptions | TextDocumentContentRegistrationOptions;
937
+ };
805
938
  /**
806
939
  * Defines the capabilities provided by a language
807
940
  * server.
@@ -975,31 +1108,49 @@ export interface ServerCapabilities<T = LSPAny> {
975
1108
  * Inline completion options used during static registration.
976
1109
  *
977
1110
  * @since 3.18.0
978
- * @proposed
979
1111
  */
980
1112
  inlineCompletionProvider?: boolean | InlineCompletionOptions;
981
1113
  /**
982
1114
  * Workspace specific server capabilities.
983
1115
  */
984
- workspace?: {
985
- /**
986
- * The server supports workspace folder.
987
- *
988
- * @since 3.6.0
989
- */
990
- workspaceFolders?: WorkspaceFoldersServerCapabilities;
991
- /**
992
- * The server is interested in notifications/requests for operations on files.
993
- *
994
- * @since 3.16.0
995
- */
996
- fileOperations?: FileOperationOptions;
997
- };
1116
+ workspace?: WorkspaceOptions;
998
1117
  /**
999
1118
  * Experimental server capabilities.
1000
1119
  */
1001
1120
  experimental?: T;
1002
1121
  }
1122
+ /**
1123
+ * Information about the server
1124
+ *
1125
+ * @since 3.15.0
1126
+ * @since 3.18.0 ServerInfo type name added.
1127
+ */
1128
+ export type ServerInfo = {
1129
+ /**
1130
+ * The name of the server as defined by the server.
1131
+ */
1132
+ name: string;
1133
+ /**
1134
+ * The server's version as defined by the server.
1135
+ */
1136
+ version?: string;
1137
+ };
1138
+ /**
1139
+ * Information about the client
1140
+ *
1141
+ * @since 3.15.0
1142
+ * @since 3.18.0 ClientInfo type name added.
1143
+ */
1144
+ export type ClientInfo = {
1145
+ /**
1146
+ * The name of the client as defined by the client.
1147
+ */
1148
+ name: string;
1149
+ /**
1150
+ * The client's version as defined by the client.
1151
+ */
1152
+ version?: string;
1153
+ };
1003
1154
  /**
1004
1155
  * The initialize request is sent from the client to the server.
1005
1156
  * It is sent once as the request after starting up the server.
@@ -1029,16 +1180,7 @@ export interface _InitializeParams extends WorkDoneProgressParams {
1029
1180
  *
1030
1181
  * @since 3.15.0
1031
1182
  */
1032
- clientInfo?: {
1033
- /**
1034
- * The name of the client as defined by the client.
1035
- */
1036
- name: string;
1037
- /**
1038
- * The client's version as defined by the client.
1039
- */
1040
- version?: string;
1041
- };
1183
+ clientInfo?: ClientInfo;
1042
1184
  /**
1043
1185
  * The locale the client is currently showing the user interface
1044
1186
  * in. This must not necessarily be the locale of the operating
@@ -1076,7 +1218,7 @@ export interface _InitializeParams extends WorkDoneProgressParams {
1076
1218
  /**
1077
1219
  * The initial trace setting. If omitted trace is disabled ('off').
1078
1220
  */
1079
- trace?: TraceValues;
1221
+ trace?: TraceValue;
1080
1222
  }
1081
1223
  export type InitializeParams = _InitializeParams & WorkspaceFoldersInitializeParams;
1082
1224
  /**
@@ -1092,16 +1234,7 @@ export interface InitializeResult<T = any> {
1092
1234
  *
1093
1235
  * @since 3.15.0
1094
1236
  */
1095
- serverInfo?: {
1096
- /**
1097
- * The name of the server as defined by the server.
1098
- */
1099
- name: string;
1100
- /**
1101
- * The server's version as defined by the server.
1102
- */
1103
- version?: string;
1104
- };
1237
+ serverInfo?: ServerInfo;
1105
1238
  /**
1106
1239
  * Custom initialization results.
1107
1240
  */
@@ -1180,6 +1313,7 @@ export declare namespace DidChangeConfigurationNotification {
1180
1313
  const method: 'workspace/didChangeConfiguration';
1181
1314
  const messageDirection: MessageDirection;
1182
1315
  const type: ProtocolNotificationType<DidChangeConfigurationParams, DidChangeConfigurationRegistrationOptions>;
1316
+ const capabilities: CM<"workspace.didChangeConfiguration", undefined>;
1183
1317
  }
1184
1318
  export interface DidChangeConfigurationRegistrationOptions {
1185
1319
  section?: string | string[];
@@ -1242,7 +1376,19 @@ export declare namespace ShowMessageNotification {
1242
1376
  const method: 'window/showMessage';
1243
1377
  const messageDirection: MessageDirection;
1244
1378
  const type: ProtocolNotificationType<ShowMessageParams, void>;
1379
+ const capabilities: CM<"window.showMessage", undefined>;
1245
1380
  }
1381
+ /**
1382
+ * @since 3.18.0
1383
+ */
1384
+ export type ClientShowMessageActionItemOptions = {
1385
+ /**
1386
+ * Whether the client supports additional attributes which
1387
+ * are preserved and send back to the server in the
1388
+ * request's response.
1389
+ */
1390
+ additionalPropertiesSupport?: boolean;
1391
+ };
1246
1392
  /**
1247
1393
  * Show message request client capabilities
1248
1394
  */
@@ -1250,14 +1396,7 @@ export interface ShowMessageRequestClientCapabilities {
1250
1396
  /**
1251
1397
  * Capabilities specific to the `MessageActionItem` type.
1252
1398
  */
1253
- messageActionItem?: {
1254
- /**
1255
- * Whether the client supports additional attributes which
1256
- * are preserved and send back to the server in the
1257
- * request's response.
1258
- */
1259
- additionalPropertiesSupport?: boolean;
1260
- };
1399
+ messageActionItem?: ClientShowMessageActionItemOptions;
1261
1400
  }
1262
1401
  export interface MessageActionItem {
1263
1402
  /**
@@ -1293,6 +1432,7 @@ export declare namespace ShowMessageRequest {
1293
1432
  const method: 'window/showMessageRequest';
1294
1433
  const messageDirection: MessageDirection;
1295
1434
  const type: ProtocolRequestType<ShowMessageRequestParams, MessageActionItem | null, never, void, void>;
1435
+ const capabilities: CM<"window.showMessage", undefined>;
1296
1436
  }
1297
1437
  /**
1298
1438
  * The log message notification is sent from the server to the client to ask
@@ -1325,6 +1465,14 @@ export declare namespace TelemetryEventNotification {
1325
1465
  const messageDirection: MessageDirection;
1326
1466
  const type: ProtocolNotificationType<any, void>;
1327
1467
  }
1468
+ export interface TextDocumentFilterClientCapabilities {
1469
+ /**
1470
+ * The client supports Relative Patterns.
1471
+ *
1472
+ * @since 3.18.0
1473
+ */
1474
+ relativePatternSupport?: boolean;
1475
+ }
1328
1476
  export interface TextDocumentSyncClientCapabilities {
1329
1477
  /**
1330
1478
  * Whether text document synchronization supports dynamic registration.
@@ -1417,12 +1565,21 @@ export declare namespace DidOpenTextDocumentNotification {
1417
1565
  const method: 'textDocument/didOpen';
1418
1566
  const messageDirection: MessageDirection;
1419
1567
  const type: ProtocolNotificationType<DidOpenTextDocumentParams, TextDocumentRegistrationOptions>;
1568
+ const capabilities: CM<"textDocument.synchronization", "textDocumentSync.openClose">;
1420
1569
  }
1421
1570
  /**
1422
- * An event describing a change to a text document. If only a text is provided
1423
- * it is considered to be the full content of the document.
1571
+ * @since 3.18.0
1572
+ */
1573
+ export type TextDocumentContentChangeWholeDocument = {
1574
+ /**
1575
+ * The new text of the whole document.
1576
+ */
1577
+ text: string;
1578
+ };
1579
+ /**
1580
+ * @since 3.18.0
1424
1581
  */
1425
- export type TextDocumentContentChangeEvent = {
1582
+ export type TextDocumentContentChangePartial = {
1426
1583
  /**
1427
1584
  * The range of the document that changed.
1428
1585
  */
@@ -1437,12 +1594,12 @@ export type TextDocumentContentChangeEvent = {
1437
1594
  * The new text for the provided range.
1438
1595
  */
1439
1596
  text: string;
1440
- } | {
1441
- /**
1442
- * The new text of the whole document.
1443
- */
1444
- text: string;
1445
1597
  };
1598
+ /**
1599
+ * An event describing a change to a text document. If only a text is provided
1600
+ * it is considered to be the full content of the document.
1601
+ */
1602
+ export type TextDocumentContentChangeEvent = TextDocumentContentChangePartial | TextDocumentContentChangeWholeDocument;
1446
1603
  export declare namespace TextDocumentContentChangeEvent {
1447
1604
  /**
1448
1605
  * Checks whether the information describes a delta event.
@@ -1501,6 +1658,7 @@ export declare namespace DidChangeTextDocumentNotification {
1501
1658
  const method: 'textDocument/didChange';
1502
1659
  const messageDirection: MessageDirection;
1503
1660
  const type: ProtocolNotificationType<DidChangeTextDocumentParams, TextDocumentChangeRegistrationOptions>;
1661
+ const capabilities: CM<"textDocument.synchronization", "textDocumentSync">;
1504
1662
  }
1505
1663
  /**
1506
1664
  * The parameters sent in a close text document notification
@@ -1524,6 +1682,7 @@ export declare namespace DidCloseTextDocumentNotification {
1524
1682
  const method: 'textDocument/didClose';
1525
1683
  const messageDirection: MessageDirection;
1526
1684
  const type: ProtocolNotificationType<DidCloseTextDocumentParams, TextDocumentRegistrationOptions>;
1685
+ const capabilities: CM<"textDocument.synchronization", "textDocumentSync.openClose">;
1527
1686
  }
1528
1687
  /**
1529
1688
  * The parameters sent in a save text document notification
@@ -1552,6 +1711,7 @@ export declare namespace DidSaveTextDocumentNotification {
1552
1711
  const method: 'textDocument/didSave';
1553
1712
  const messageDirection: MessageDirection;
1554
1713
  const type: ProtocolNotificationType<DidSaveTextDocumentParams, TextDocumentSaveRegistrationOptions>;
1714
+ const capabilities: CM<"textDocument.synchronization.didSave", "textDocumentSync.save">;
1555
1715
  }
1556
1716
  /**
1557
1717
  * Represents reasons why a text document is saved.
@@ -1593,6 +1753,7 @@ export declare namespace WillSaveTextDocumentNotification {
1593
1753
  const method: 'textDocument/willSave';
1594
1754
  const messageDirection: MessageDirection;
1595
1755
  const type: ProtocolNotificationType<WillSaveTextDocumentParams, TextDocumentRegistrationOptions>;
1756
+ const capabilities: CM<"textDocument.synchronization.willSave", "textDocumentSync.willSave">;
1596
1757
  }
1597
1758
  /**
1598
1759
  * A document will save request is sent from the client to the server before
@@ -1606,6 +1767,7 @@ export declare namespace WillSaveTextDocumentWaitUntilRequest {
1606
1767
  const method: 'textDocument/willSaveWaitUntil';
1607
1768
  const messageDirection: MessageDirection;
1608
1769
  const type: ProtocolRequestType<WillSaveTextDocumentParams, TextEdit[] | null, never, void, TextDocumentRegistrationOptions>;
1770
+ const capabilities: CM<"textDocument.synchronization.willSaveWaitUntil", "textDocumentSync.willSaveWaitUntil">;
1609
1771
  }
1610
1772
  export interface DidChangeWatchedFilesClientCapabilities {
1611
1773
  /**
@@ -1630,6 +1792,7 @@ export declare namespace DidChangeWatchedFilesNotification {
1630
1792
  const method: 'workspace/didChangeWatchedFiles';
1631
1793
  const messageDirection: MessageDirection;
1632
1794
  const type: ProtocolNotificationType<DidChangeWatchedFilesParams, DidChangeWatchedFilesRegistrationOptions>;
1795
+ const capabilities: CM<"workspace.didChangeWatchedFiles", undefined>;
1633
1796
  }
1634
1797
  /**
1635
1798
  * The watched files change notification's parameters.
@@ -1682,7 +1845,7 @@ export interface DidChangeWatchedFilesRegistrationOptions {
1682
1845
  }
1683
1846
  /**
1684
1847
  * The glob pattern to watch relative to the base path. Glob patterns can have the following syntax:
1685
- * - `*` to match one or more characters in a path segment
1848
+ * - `*` to match zero or more characters in a path segment
1686
1849
  * - `?` to match on one character in a path segment
1687
1850
  * - `**` to match any number of path segments, including none
1688
1851
  * - `{}` to group conditions (e.g. `**​/*.{ts,js}` matches all TypeScript and JavaScript files)
@@ -1719,6 +1882,9 @@ export declare namespace RelativePattern {
1719
1882
  * @since 3.17.0
1720
1883
  */
1721
1884
  export type GlobPattern = Pattern | RelativePattern;
1885
+ export declare namespace GlobPattern {
1886
+ function is(value: any): value is GlobPattern;
1887
+ }
1722
1888
  export interface FileSystemWatcher {
1723
1889
  /**
1724
1890
  * The glob pattern to watch. See {@link GlobPattern glob pattern} for more detail.
@@ -1749,9 +1915,18 @@ export declare namespace WatchKind {
1749
1915
  }
1750
1916
  export type WatchKind = uinteger;
1751
1917
  /**
1752
- * The publish diagnostic client capabilities.
1918
+ * @since 3.18.0
1919
+ */
1920
+ export type ClientDiagnosticsTagOptions = {
1921
+ /**
1922
+ * The tags supported by the client.
1923
+ */
1924
+ valueSet: DiagnosticTag[];
1925
+ };
1926
+ /**
1927
+ * General diagnostics capabilities for pull and push model.
1753
1928
  */
1754
- export interface PublishDiagnosticsClientCapabilities {
1929
+ export interface DiagnosticsCapabilities {
1755
1930
  /**
1756
1931
  * Whether the clients accepts diagnostics with related information.
1757
1932
  */
@@ -1762,19 +1937,7 @@ export interface PublishDiagnosticsClientCapabilities {
1762
1937
  *
1763
1938
  * @since 3.15.0
1764
1939
  */
1765
- tagSupport?: {
1766
- /**
1767
- * The tags supported by the client.
1768
- */
1769
- valueSet: DiagnosticTag[];
1770
- };
1771
- /**
1772
- * Whether the client interprets the version property of the
1773
- * `textDocument/publishDiagnostics` notification's parameter.
1774
- *
1775
- * @since 3.15.0
1776
- */
1777
- versionSupport?: boolean;
1940
+ tagSupport?: ClientDiagnosticsTagOptions;
1778
1941
  /**
1779
1942
  * Client supports a codeDescription property
1780
1943
  *
@@ -1790,6 +1953,18 @@ export interface PublishDiagnosticsClientCapabilities {
1790
1953
  */
1791
1954
  dataSupport?: boolean;
1792
1955
  }
1956
+ /**
1957
+ * The publish diagnostic client capabilities.
1958
+ */
1959
+ export interface PublishDiagnosticsClientCapabilities extends DiagnosticsCapabilities {
1960
+ /**
1961
+ * Whether the client interprets the version property of the
1962
+ * `textDocument/publishDiagnostics` notification's parameter.
1963
+ *
1964
+ * @since 3.15.0
1965
+ */
1966
+ versionSupport?: boolean;
1967
+ }
1793
1968
  /**
1794
1969
  * The publish diagnostic notification's parameters.
1795
1970
  */
@@ -1817,7 +1992,151 @@ export declare namespace PublishDiagnosticsNotification {
1817
1992
  const method: 'textDocument/publishDiagnostics';
1818
1993
  const messageDirection: MessageDirection;
1819
1994
  const type: ProtocolNotificationType<PublishDiagnosticsParams, void>;
1995
+ const capabilities: CM<"textDocument.publishDiagnostics", undefined>;
1820
1996
  }
1997
+ /**
1998
+ * The client supports the following `CompletionList` specific
1999
+ * capabilities.
2000
+ *
2001
+ * @since 3.17.0
2002
+ */
2003
+ export interface CompletionListCapabilities {
2004
+ /**
2005
+ * The client supports the following itemDefaults on
2006
+ * a completion list.
2007
+ *
2008
+ * The value lists the supported property names of the
2009
+ * `CompletionList.itemDefaults` object. If omitted
2010
+ * no properties are supported.
2011
+ *
2012
+ * @since 3.17.0
2013
+ */
2014
+ itemDefaults?: string[];
2015
+ /**
2016
+ * Specifies whether the client supports `CompletionList.applyKind` to
2017
+ * indicate how supported values from `completionList.itemDefaults`
2018
+ * and `completion` will be combined.
2019
+ *
2020
+ * If a client supports `applyKind` it must support it for all fields
2021
+ * that it supports that are listed in `CompletionList.applyKind`. This
2022
+ * means when clients add support for new/future fields in completion
2023
+ * items the MUST also support merge for them if those fields are
2024
+ * defined in `CompletionList.applyKind`.
2025
+ *
2026
+ * @since 3.18.0
2027
+ */
2028
+ applyKindSupport?: boolean;
2029
+ }
2030
+ /**
2031
+ * @since 3.18.0
2032
+ */
2033
+ export type CompletionItemTagOptions = {
2034
+ /**
2035
+ * The tags supported by the client.
2036
+ */
2037
+ valueSet: CompletionItemTag[];
2038
+ };
2039
+ /**
2040
+ * @since 3.18.0
2041
+ */
2042
+ export type ClientCompletionItemResolveOptions = {
2043
+ /**
2044
+ * The properties that a client can resolve lazily.
2045
+ */
2046
+ properties: string[];
2047
+ };
2048
+ /**
2049
+ * @since 3.18.0
2050
+ */
2051
+ export type ClientCompletionItemInsertTextModeOptions = {
2052
+ valueSet: InsertTextMode[];
2053
+ };
2054
+ /**
2055
+ * @since 3.18.0
2056
+ */
2057
+ export type ClientCompletionItemOptions = {
2058
+ /**
2059
+ * Client supports snippets as insert text.
2060
+ *
2061
+ * A snippet can define tab stops and placeholders with `$1`, `$2`
2062
+ * and `${3:foo}`. `$0` defines the final tab stop, it defaults to
2063
+ * the end of the snippet. Placeholders with equal identifiers are linked,
2064
+ * that is typing in one will update others too.
2065
+ */
2066
+ snippetSupport?: boolean;
2067
+ /**
2068
+ * Client supports commit characters on a completion item.
2069
+ */
2070
+ commitCharactersSupport?: boolean;
2071
+ /**
2072
+ * Client supports the following content formats for the documentation
2073
+ * property. The order describes the preferred format of the client.
2074
+ */
2075
+ documentationFormat?: MarkupKind[];
2076
+ /**
2077
+ * Client supports the deprecated property on a completion item.
2078
+ */
2079
+ deprecatedSupport?: boolean;
2080
+ /**
2081
+ * Client supports the preselect property on a completion item.
2082
+ */
2083
+ preselectSupport?: boolean;
2084
+ /**
2085
+ * Client supports the tag property on a completion item. Clients supporting
2086
+ * tags have to handle unknown tags gracefully. Clients especially need to
2087
+ * preserve unknown tags when sending a completion item back to the server in
2088
+ * a resolve call.
2089
+ *
2090
+ * @since 3.15.0
2091
+ */
2092
+ tagSupport?: CompletionItemTagOptions;
2093
+ /**
2094
+ * Client support insert replace edit to control different behavior if a
2095
+ * completion item is inserted in the text or should replace text.
2096
+ *
2097
+ * @since 3.16.0
2098
+ */
2099
+ insertReplaceSupport?: boolean;
2100
+ /**
2101
+ * Indicates which properties a client can resolve lazily on a completion
2102
+ * item. Before version 3.16.0 only the predefined properties `documentation`
2103
+ * and `details` could be resolved lazily.
2104
+ *
2105
+ * @since 3.16.0
2106
+ */
2107
+ resolveSupport?: ClientCompletionItemResolveOptions;
2108
+ /**
2109
+ * The client supports the `insertTextMode` property on
2110
+ * a completion item to override the whitespace handling mode
2111
+ * as defined by the client (see `insertTextMode`).
2112
+ *
2113
+ * @since 3.16.0
2114
+ */
2115
+ insertTextModeSupport?: ClientCompletionItemInsertTextModeOptions;
2116
+ /**
2117
+ * The client has support for completion item label
2118
+ * details (see also `CompletionItemLabelDetails`).
2119
+ *
2120
+ * @since 3.17.0
2121
+ */
2122
+ labelDetailsSupport?: boolean;
2123
+ };
2124
+ /**
2125
+ * @since 3.18.0
2126
+ */
2127
+ export type ClientCompletionItemOptionsKind = {
2128
+ /**
2129
+ * The completion item kind values the client supports. When this
2130
+ * property exists the client also guarantees that it will
2131
+ * handle values outside its set gracefully and falls back
2132
+ * to a default value when unknown.
2133
+ *
2134
+ * If this property is not present the client only supports
2135
+ * the completion items kinds from `Text` to `Reference` as defined in
2136
+ * the initial version of the protocol.
2137
+ */
2138
+ valueSet?: CompletionItemKind[];
2139
+ };
1821
2140
  /**
1822
2141
  * Completion client capabilities
1823
2142
  */
@@ -1830,98 +2149,11 @@ export interface CompletionClientCapabilities {
1830
2149
  * The client supports the following `CompletionItem` specific
1831
2150
  * capabilities.
1832
2151
  */
1833
- completionItem?: {
1834
- /**
1835
- * Client supports snippets as insert text.
1836
- *
1837
- * A snippet can define tab stops and placeholders with `$1`, `$2`
1838
- * and `${3:foo}`. `$0` defines the final tab stop, it defaults to
1839
- * the end of the snippet. Placeholders with equal identifiers are linked,
1840
- * that is typing in one will update others too.
1841
- */
1842
- snippetSupport?: boolean;
1843
- /**
1844
- * Client supports commit characters on a completion item.
1845
- */
1846
- commitCharactersSupport?: boolean;
1847
- /**
1848
- * Client supports the following content formats for the documentation
1849
- * property. The order describes the preferred format of the client.
1850
- */
1851
- documentationFormat?: MarkupKind[];
1852
- /**
1853
- * Client supports the deprecated property on a completion item.
1854
- */
1855
- deprecatedSupport?: boolean;
1856
- /**
1857
- * Client supports the preselect property on a completion item.
1858
- */
1859
- preselectSupport?: boolean;
1860
- /**
1861
- * Client supports the tag property on a completion item. Clients supporting
1862
- * tags have to handle unknown tags gracefully. Clients especially need to
1863
- * preserve unknown tags when sending a completion item back to the server in
1864
- * a resolve call.
1865
- *
1866
- * @since 3.15.0
1867
- */
1868
- tagSupport?: {
1869
- /**
1870
- * The tags supported by the client.
1871
- */
1872
- valueSet: CompletionItemTag[];
1873
- };
1874
- /**
1875
- * Client support insert replace edit to control different behavior if a
1876
- * completion item is inserted in the text or should replace text.
1877
- *
1878
- * @since 3.16.0
1879
- */
1880
- insertReplaceSupport?: boolean;
1881
- /**
1882
- * Indicates which properties a client can resolve lazily on a completion
1883
- * item. Before version 3.16.0 only the predefined properties `documentation`
1884
- * and `details` could be resolved lazily.
1885
- *
1886
- * @since 3.16.0
1887
- */
1888
- resolveSupport?: {
1889
- /**
1890
- * The properties that a client can resolve lazily.
1891
- */
1892
- properties: string[];
1893
- };
1894
- /**
1895
- * The client supports the `insertTextMode` property on
1896
- * a completion item to override the whitespace handling mode
1897
- * as defined by the client (see `insertTextMode`).
1898
- *
1899
- * @since 3.16.0
1900
- */
1901
- insertTextModeSupport?: {
1902
- valueSet: InsertTextMode[];
1903
- };
1904
- /**
1905
- * The client has support for completion item label
1906
- * details (see also `CompletionItemLabelDetails`).
1907
- *
1908
- * @since 3.17.0
1909
- */
1910
- labelDetailsSupport?: boolean;
1911
- };
1912
- completionItemKind?: {
1913
- /**
1914
- * The completion item kind values the client supports. When this
1915
- * property exists the client also guarantees that it will
1916
- * handle values outside its set gracefully and falls back
1917
- * to a default value when unknown.
1918
- *
1919
- * If this property is not present the client only supports
1920
- * the completion items kinds from `Text` to `Reference` as defined in
1921
- * the initial version of the protocol.
1922
- */
1923
- valueSet?: CompletionItemKind[];
1924
- };
2152
+ completionItem?: ClientCompletionItemOptions;
2153
+ /**
2154
+ * The client supports the following completion item kinds.
2155
+ */
2156
+ completionItemKind?: ClientCompletionItemOptionsKind;
1925
2157
  /**
1926
2158
  * Defines how the client handles whitespace and indentation
1927
2159
  * when accepting a completion item that uses multi line
@@ -1941,19 +2173,7 @@ export interface CompletionClientCapabilities {
1941
2173
  *
1942
2174
  * @since 3.17.0
1943
2175
  */
1944
- completionList?: {
1945
- /**
1946
- * The client supports the following itemDefaults on
1947
- * a completion list.
1948
- *
1949
- * The value lists the supported property names of the
1950
- * `CompletionList.itemDefaults` object. If omitted
1951
- * no properties are supported.
1952
- *
1953
- * @since 3.17.0
1954
- */
1955
- itemDefaults?: string[];
1956
- };
2176
+ completionList?: CompletionListCapabilities;
1957
2177
  }
1958
2178
  /**
1959
2179
  * How a completion was triggered
@@ -1999,6 +2219,19 @@ export interface CompletionParams extends TextDocumentPositionParams, WorkDonePr
1999
2219
  */
2000
2220
  context?: CompletionContext;
2001
2221
  }
2222
+ /**
2223
+ * @since 3.18.0
2224
+ */
2225
+ export type ServerCompletionItemOptions = {
2226
+ /**
2227
+ * The server has support for completion item label
2228
+ * details (see also `CompletionItemLabelDetails`) when
2229
+ * receiving a completion item in a resolve call.
2230
+ *
2231
+ * @since 3.17.0
2232
+ */
2233
+ labelDetailsSupport?: boolean;
2234
+ };
2002
2235
  /**
2003
2236
  * Completion options.
2004
2237
  */
@@ -2036,16 +2269,7 @@ export interface CompletionOptions extends WorkDoneProgressOptions {
2036
2269
  *
2037
2270
  * @since 3.17.0
2038
2271
  */
2039
- completionItem?: {
2040
- /**
2041
- * The server has support for completion item label
2042
- * details (see also `CompletionItemLabelDetails`) when
2043
- * receiving a completion item in a resolve call.
2044
- *
2045
- * @since 3.17.0
2046
- */
2047
- labelDetailsSupport?: boolean;
2048
- };
2272
+ completionItem?: ServerCompletionItemOptions;
2049
2273
  }
2050
2274
  /**
2051
2275
  * Registration options for a {@link CompletionRequest}.
@@ -2067,6 +2291,7 @@ export declare namespace CompletionRequest {
2067
2291
  const method: 'textDocument/completion';
2068
2292
  const messageDirection: MessageDirection;
2069
2293
  const type: ProtocolRequestType<CompletionParams, CompletionList | CompletionItem[] | null, CompletionItem[], void, CompletionRegistrationOptions>;
2294
+ const capabilities: CM<"textDocument.completion", "completionProvider">;
2070
2295
  }
2071
2296
  /**
2072
2297
  * Request to resolve additional information for a given completion item.The request's
@@ -2077,6 +2302,7 @@ export declare namespace CompletionResolveRequest {
2077
2302
  const method: 'completionItem/resolve';
2078
2303
  const messageDirection: MessageDirection;
2079
2304
  const type: ProtocolRequestType<CompletionItem, CompletionItem, never, void, void>;
2305
+ const capabilities: CM<"textDocument.completion.completionItem.resolveSupport", "completionProvider.resolveProvider">;
2080
2306
  }
2081
2307
  export interface HoverClientCapabilities {
2082
2308
  /**
@@ -2113,7 +2339,49 @@ export declare namespace HoverRequest {
2113
2339
  const method: 'textDocument/hover';
2114
2340
  const messageDirection: MessageDirection;
2115
2341
  const type: ProtocolRequestType<HoverParams, Hover | null, never, void, HoverRegistrationOptions>;
2342
+ const capabilities: CM<"textDocument.hover", "hoverProvider">;
2116
2343
  }
2344
+ /**
2345
+ * @since 3.18.0
2346
+ */
2347
+ export type ClientSignatureParameterInformationOptions = {
2348
+ /**
2349
+ * The client supports processing label offsets instead of a
2350
+ * simple label string.
2351
+ *
2352
+ * @since 3.14.0
2353
+ */
2354
+ labelOffsetSupport?: boolean;
2355
+ };
2356
+ /**
2357
+ * @since 3.18.0
2358
+ */
2359
+ export type ClientSignatureInformationOptions = {
2360
+ /**
2361
+ * Client supports the following content formats for the documentation
2362
+ * property. The order describes the preferred format of the client.
2363
+ */
2364
+ documentationFormat?: MarkupKind[];
2365
+ /**
2366
+ * Client capabilities specific to parameter information.
2367
+ */
2368
+ parameterInformation?: ClientSignatureParameterInformationOptions;
2369
+ /**
2370
+ * The client supports the `activeParameter` property on `SignatureInformation`
2371
+ * literal.
2372
+ *
2373
+ * @since 3.16.0
2374
+ */
2375
+ activeParameterSupport?: boolean;
2376
+ /**
2377
+ * The client supports the `activeParameter` property on
2378
+ * `SignatureHelp`/`SignatureInformation` being set to `null` to
2379
+ * indicate that no parameter should be active.
2380
+ *
2381
+ * @since 3.18.0
2382
+ */
2383
+ noActiveParameterSupport?: boolean;
2384
+ };
2117
2385
  /**
2118
2386
  * Client Capabilities for a {@link SignatureHelpRequest}.
2119
2387
  */
@@ -2126,32 +2394,7 @@ export interface SignatureHelpClientCapabilities {
2126
2394
  * The client supports the following `SignatureInformation`
2127
2395
  * specific properties.
2128
2396
  */
2129
- signatureInformation?: {
2130
- /**
2131
- * Client supports the following content formats for the documentation
2132
- * property. The order describes the preferred format of the client.
2133
- */
2134
- documentationFormat?: MarkupKind[];
2135
- /**
2136
- * Client capabilities specific to parameter information.
2137
- */
2138
- parameterInformation?: {
2139
- /**
2140
- * The client supports processing label offsets instead of a
2141
- * simple label string.
2142
- *
2143
- * @since 3.14.0
2144
- */
2145
- labelOffsetSupport?: boolean;
2146
- };
2147
- /**
2148
- * The client supports the `activeParameter` property on `SignatureInformation`
2149
- * literal.
2150
- *
2151
- * @since 3.16.0
2152
- */
2153
- activeParameterSupport?: boolean;
2154
- };
2397
+ signatureInformation?: ClientSignatureInformationOptions;
2155
2398
  /**
2156
2399
  * The client supports to send additional context information for a
2157
2400
  * `textDocument/signatureHelp` request. A client that opts into
@@ -2252,6 +2495,7 @@ export declare namespace SignatureHelpRequest {
2252
2495
  const method: 'textDocument/signatureHelp';
2253
2496
  const messageDirection: MessageDirection;
2254
2497
  const type: ProtocolRequestType<SignatureHelpParams, SignatureHelp | null, never, void, SignatureHelpRegistrationOptions>;
2498
+ const capabilities: CM<"textDocument.signatureHelp", "signatureHelpProvider">;
2255
2499
  }
2256
2500
  /**
2257
2501
  * Client Capabilities for a {@link DefinitionRequest}.
@@ -2293,6 +2537,7 @@ export declare namespace DefinitionRequest {
2293
2537
  const method: 'textDocument/definition';
2294
2538
  const messageDirection: MessageDirection;
2295
2539
  const type: ProtocolRequestType<DefinitionParams, Definition | LocationLink[] | null, Location[] | LocationLink[], void, DefinitionRegistrationOptions>;
2540
+ const capabilities: CM<"textDocument.definition", "definitionProvider">;
2296
2541
  }
2297
2542
  /**
2298
2543
  * Client Capabilities for a {@link ReferencesRequest}.
@@ -2329,6 +2574,7 @@ export declare namespace ReferencesRequest {
2329
2574
  const method: 'textDocument/references';
2330
2575
  const messageDirection: MessageDirection;
2331
2576
  const type: ProtocolRequestType<ReferenceParams, Location[] | null, Location[], void, ReferenceRegistrationOptions>;
2577
+ const capabilities: CM<"textDocument.references", "referencesProvider">;
2332
2578
  }
2333
2579
  /**
2334
2580
  * Client Capabilities for a {@link DocumentHighlightRequest}.
@@ -2364,6 +2610,7 @@ export declare namespace DocumentHighlightRequest {
2364
2610
  const method: 'textDocument/documentHighlight';
2365
2611
  const messageDirection: MessageDirection;
2366
2612
  const type: ProtocolRequestType<DocumentHighlightParams, DocumentHighlight[] | null, DocumentHighlight[], void, DocumentHighlightRegistrationOptions>;
2613
+ const capabilities: CM<"textDocument.documentHighlight", "documentHighlightProvider">;
2367
2614
  }
2368
2615
  /**
2369
2616
  * Client Capabilities for a {@link DocumentSymbolRequest}.
@@ -2377,19 +2624,7 @@ export interface DocumentSymbolClientCapabilities {
2377
2624
  * Specific capabilities for the `SymbolKind` in the
2378
2625
  * `textDocument/documentSymbol` request.
2379
2626
  */
2380
- symbolKind?: {
2381
- /**
2382
- * The symbol kind values the client supports. When this
2383
- * property exists the client also guarantees that it will
2384
- * handle values outside its set gracefully and falls back
2385
- * to a default value when unknown.
2386
- *
2387
- * If this property is not present the client only supports
2388
- * the symbol kinds from `File` to `Array` as defined in
2389
- * the initial version of the protocol.
2390
- */
2391
- valueSet?: SymbolKind[];
2392
- };
2627
+ symbolKind?: ClientSymbolKindOptions;
2393
2628
  /**
2394
2629
  * The client supports hierarchical document symbols.
2395
2630
  */
@@ -2401,12 +2636,7 @@ export interface DocumentSymbolClientCapabilities {
2401
2636
  *
2402
2637
  * @since 3.16.0
2403
2638
  */
2404
- tagSupport?: {
2405
- /**
2406
- * The tags supported by the client.
2407
- */
2408
- valueSet: SymbolTag[];
2409
- };
2639
+ tagSupport?: ClientSymbolTagOptions;
2410
2640
  /**
2411
2641
  * The client supports an additional label presented in the UI when
2412
2642
  * registering a document symbol provider.
@@ -2451,7 +2681,39 @@ export declare namespace DocumentSymbolRequest {
2451
2681
  const method: 'textDocument/documentSymbol';
2452
2682
  const messageDirection: MessageDirection;
2453
2683
  const type: ProtocolRequestType<DocumentSymbolParams, DocumentSymbol[] | SymbolInformation[] | null, DocumentSymbol[] | SymbolInformation[], void, DocumentSymbolRegistrationOptions>;
2684
+ const capabilities: CM<"textDocument.documentSymbol", "documentSymbolProvider">;
2454
2685
  }
2686
+ /**
2687
+ * @since 3.18.0
2688
+ */
2689
+ export type ClientCodeActionKindOptions = {
2690
+ /**
2691
+ * The code action kind values the client supports. When this
2692
+ * property exists the client also guarantees that it will
2693
+ * handle values outside its set gracefully and falls back
2694
+ * to a default value when unknown.
2695
+ */
2696
+ valueSet: CodeActionKind[];
2697
+ };
2698
+ /**
2699
+ * @since 3.18.0
2700
+ */
2701
+ export type ClientCodeActionLiteralOptions = {
2702
+ /**
2703
+ * The code action kind is support with the following value
2704
+ * set.
2705
+ */
2706
+ codeActionKind: ClientCodeActionKindOptions;
2707
+ };
2708
+ /**
2709
+ * @since 3.18.0
2710
+ */
2711
+ export type ClientCodeActionResolveOptions = {
2712
+ /**
2713
+ * The properties that a client can resolve lazily.
2714
+ */
2715
+ properties: string[];
2716
+ };
2455
2717
  /**
2456
2718
  * The Client Capabilities of a {@link CodeActionRequest}.
2457
2719
  */
@@ -2467,21 +2729,7 @@ export interface CodeActionClientCapabilities {
2467
2729
  *
2468
2730
  * @since 3.8.0
2469
2731
  */
2470
- codeActionLiteralSupport?: {
2471
- /**
2472
- * The code action kind is support with the following value
2473
- * set.
2474
- */
2475
- codeActionKind: {
2476
- /**
2477
- * The code action kind values the client supports. When this
2478
- * property exists the client also guarantees that it will
2479
- * handle values outside its set gracefully and falls back
2480
- * to a default value when unknown.
2481
- */
2482
- valueSet: CodeActionKind[];
2483
- };
2484
- };
2732
+ codeActionLiteralSupport?: ClientCodeActionLiteralOptions;
2485
2733
  /**
2486
2734
  * Whether code action supports the `isPreferred` property.
2487
2735
  *
@@ -2508,12 +2756,7 @@ export interface CodeActionClientCapabilities {
2508
2756
  *
2509
2757
  * @since 3.16.0
2510
2758
  */
2511
- resolveSupport?: {
2512
- /**
2513
- * The properties that a client can resolve lazily.
2514
- */
2515
- properties: string[];
2516
- };
2759
+ resolveSupport?: ClientCodeActionResolveOptions;
2517
2760
  /**
2518
2761
  * Whether the client honors the change annotations in
2519
2762
  * text edits and resource operations returned via the
@@ -2524,7 +2767,30 @@ export interface CodeActionClientCapabilities {
2524
2767
  * @since 3.16.0
2525
2768
  */
2526
2769
  honorsChangeAnnotations?: boolean;
2770
+ /**
2771
+ * Whether the client supports documentation for a class of
2772
+ * code actions.
2773
+ *
2774
+ * @since 3.18.0
2775
+ */
2776
+ documentationSupport?: boolean;
2777
+ /**
2778
+ * Client supports the tag property on a code action. Clients
2779
+ * supporting tags have to handle unknown tags gracefully.
2780
+ *
2781
+ * @since 3.18.0 - proposed
2782
+ */
2783
+ tagSupport?: CodeActionTagOptions;
2527
2784
  }
2785
+ /**
2786
+ * @since 3.18.0 - proposed
2787
+ */
2788
+ export type CodeActionTagOptions = {
2789
+ /**
2790
+ * The tags supported by the client.
2791
+ */
2792
+ valueSet: CodeActionTag[];
2793
+ };
2528
2794
  /**
2529
2795
  * The parameters of a {@link CodeActionRequest}.
2530
2796
  */
@@ -2542,6 +2808,27 @@ export interface CodeActionParams extends WorkDoneProgressParams, PartialResultP
2542
2808
  */
2543
2809
  context: CodeActionContext;
2544
2810
  }
2811
+ /**
2812
+ * Documentation for a class of code actions.
2813
+ *
2814
+ * @since 3.18.0
2815
+ */
2816
+ export type CodeActionKindDocumentation = {
2817
+ /**
2818
+ * The kind of the code action being documented.
2819
+ *
2820
+ * If the kind is generic, such as `CodeActionKind.Refactor`, the documentation will be shown whenever any
2821
+ * refactorings are returned. If the kind if more specific, such as `CodeActionKind.RefactorExtract`, the
2822
+ * documentation will only be shown when extract refactoring code actions are returned.
2823
+ */
2824
+ kind: CodeActionKind;
2825
+ /**
2826
+ * Command that is ued to display the documentation to the user.
2827
+ *
2828
+ * The title of this documentation code action is taken from {@linkcode Command.title}
2829
+ */
2830
+ command: Command;
2831
+ };
2545
2832
  /**
2546
2833
  * Provider options for a {@link CodeActionRequest}.
2547
2834
  */
@@ -2553,6 +2840,23 @@ export interface CodeActionOptions extends WorkDoneProgressOptions {
2553
2840
  * may list out every specific kind they provide.
2554
2841
  */
2555
2842
  codeActionKinds?: CodeActionKind[];
2843
+ /**
2844
+ * Static documentation for a class of code actions.
2845
+ *
2846
+ * Documentation from the provider should be shown in the code actions menu if either:
2847
+ *
2848
+ * - Code actions of `kind` are requested by the editor. In this case, the editor will show the documentation that
2849
+ * most closely matches the requested code action kind. For example, if a provider has documentation for
2850
+ * both `Refactor` and `RefactorExtract`, when the user requests code actions for `RefactorExtract`,
2851
+ * the editor will use the documentation for `RefactorExtract` instead of the documentation for `Refactor`.
2852
+ *
2853
+ * - Any code actions of `kind` are returned by the provider.
2854
+ *
2855
+ * At most one documentation entry should be shown per provider.
2856
+ *
2857
+ * @since 3.18.0
2858
+ */
2859
+ documentation?: CodeActionKindDocumentation[];
2556
2860
  /**
2557
2861
  * The server provides support to resolve additional
2558
2862
  * information for a code action.
@@ -2573,6 +2877,7 @@ export declare namespace CodeActionRequest {
2573
2877
  const method: 'textDocument/codeAction';
2574
2878
  const messageDirection: MessageDirection;
2575
2879
  const type: ProtocolRequestType<CodeActionParams, (Command | CodeAction)[] | null, (Command | CodeAction)[], void, CodeActionRegistrationOptions>;
2880
+ const capabilities: CM<"textDocument.codeAction", "codeActionProvider">;
2576
2881
  }
2577
2882
  /**
2578
2883
  * Request to resolve additional information for a given code action.The request's
@@ -2583,7 +2888,43 @@ export declare namespace CodeActionResolveRequest {
2583
2888
  const method: 'codeAction/resolve';
2584
2889
  const messageDirection: MessageDirection;
2585
2890
  const type: ProtocolRequestType<CodeAction, CodeAction, never, void, void>;
2891
+ const capabilities: CM<"textDocument.codeAction.resolveSupport", "codeActionProvider.resolveProvider">;
2586
2892
  }
2893
+ /**
2894
+ * @since 3.18.0
2895
+ */
2896
+ export type ClientSymbolKindOptions = {
2897
+ /**
2898
+ * The symbol kind values the client supports. When this
2899
+ * property exists the client also guarantees that it will
2900
+ * handle values outside its set gracefully and falls back
2901
+ * to a default value when unknown.
2902
+ *
2903
+ * If this property is not present the client only supports
2904
+ * the symbol kinds from `File` to `Array` as defined in
2905
+ * the initial version of the protocol.
2906
+ */
2907
+ valueSet?: SymbolKind[];
2908
+ };
2909
+ /**
2910
+ * @since 3.18.0
2911
+ */
2912
+ export type ClientSymbolTagOptions = {
2913
+ /**
2914
+ * The tags supported by the client.
2915
+ */
2916
+ valueSet: SymbolTag[];
2917
+ };
2918
+ /**
2919
+ * @since 3.18.0
2920
+ */
2921
+ export type ClientSymbolResolveOptions = {
2922
+ /**
2923
+ * The properties that a client can resolve lazily. Usually
2924
+ * `location.range`
2925
+ */
2926
+ properties: string[];
2927
+ };
2587
2928
  /**
2588
2929
  * Client capabilities for a {@link WorkspaceSymbolRequest}.
2589
2930
  */
@@ -2595,31 +2936,14 @@ export interface WorkspaceSymbolClientCapabilities {
2595
2936
  /**
2596
2937
  * Specific capabilities for the `SymbolKind` in the `workspace/symbol` request.
2597
2938
  */
2598
- symbolKind?: {
2599
- /**
2600
- * The symbol kind values the client supports. When this
2601
- * property exists the client also guarantees that it will
2602
- * handle values outside its set gracefully and falls back
2603
- * to a default value when unknown.
2604
- *
2605
- * If this property is not present the client only supports
2606
- * the symbol kinds from `File` to `Array` as defined in
2607
- * the initial version of the protocol.
2608
- */
2609
- valueSet?: SymbolKind[];
2610
- };
2939
+ symbolKind?: ClientSymbolKindOptions;
2611
2940
  /**
2612
2941
  * The client supports tags on `SymbolInformation`.
2613
2942
  * Clients supporting tags have to handle unknown tags gracefully.
2614
2943
  *
2615
2944
  * @since 3.16.0
2616
2945
  */
2617
- tagSupport?: {
2618
- /**
2619
- * The tags supported by the client.
2620
- */
2621
- valueSet: SymbolTag[];
2622
- };
2946
+ tagSupport?: ClientSymbolTagOptions;
2623
2947
  /**
2624
2948
  * The client support partial workspace symbols. The client will send the
2625
2949
  * request `workspaceSymbol/resolve` to the server to resolve additional
@@ -2627,13 +2951,7 @@ export interface WorkspaceSymbolClientCapabilities {
2627
2951
  *
2628
2952
  * @since 3.17.0
2629
2953
  */
2630
- resolveSupport?: {
2631
- /**
2632
- * The properties that a client can resolve lazily. Usually
2633
- * `location.range`
2634
- */
2635
- properties: string[];
2636
- };
2954
+ resolveSupport?: ClientSymbolResolveOptions;
2637
2955
  }
2638
2956
  /**
2639
2957
  * The parameters of a {@link WorkspaceSymbolRequest}.
@@ -2642,6 +2960,12 @@ export interface WorkspaceSymbolParams extends WorkDoneProgressParams, PartialRe
2642
2960
  /**
2643
2961
  * A query string to filter symbols by. Clients may send an empty
2644
2962
  * string here to request all symbols.
2963
+ *
2964
+ * The `query`-parameter should be interpreted in a *relaxed way* as editors
2965
+ * will apply their own highlighting and scoring on the results. A good rule
2966
+ * of thumb is to match case-insensitive and to simply check that the
2967
+ * characters of *query* appear in their order in a candidate symbol.
2968
+ * Servers shouldn't use prefix, substring, or similar strict matching.
2645
2969
  */
2646
2970
  query: string;
2647
2971
  }
@@ -2677,6 +3001,7 @@ export declare namespace WorkspaceSymbolRequest {
2677
3001
  const method: 'workspace/symbol';
2678
3002
  const messageDirection: MessageDirection;
2679
3003
  const type: ProtocolRequestType<WorkspaceSymbolParams, SymbolInformation[] | WorkspaceSymbol[] | null, SymbolInformation[] | WorkspaceSymbol[], void, WorkspaceSymbolRegistrationOptions>;
3004
+ const capabilities: CM<"workspace.symbol", "workspaceSymbolProvider">;
2680
3005
  }
2681
3006
  /**
2682
3007
  * A request to resolve the range inside the workspace
@@ -2688,7 +3013,17 @@ export declare namespace WorkspaceSymbolResolveRequest {
2688
3013
  const method: 'workspaceSymbol/resolve';
2689
3014
  const messageDirection: MessageDirection;
2690
3015
  const type: ProtocolRequestType<WorkspaceSymbol, WorkspaceSymbol, never, void, void>;
3016
+ const capabilities: CM<"workspace.symbol.resolveSupport", "workspaceSymbolProvider.resolveProvider">;
2691
3017
  }
3018
+ /**
3019
+ * @since 3.18.0
3020
+ */
3021
+ export type ClientCodeLensResolveOptions = {
3022
+ /**
3023
+ * The properties that a client can resolve lazily.
3024
+ */
3025
+ properties: string[];
3026
+ };
2692
3027
  /**
2693
3028
  * The client capabilities of a {@link CodeLensRequest}.
2694
3029
  */
@@ -2697,6 +3032,13 @@ export interface CodeLensClientCapabilities {
2697
3032
  * Whether code lens supports dynamic registration.
2698
3033
  */
2699
3034
  dynamicRegistration?: boolean;
3035
+ /**
3036
+ * Whether the client supports resolving additional code lens
3037
+ * properties via a separate `codeLens/resolve` request.
3038
+ *
3039
+ * @since 3.18.0
3040
+ */
3041
+ resolveSupport?: ClientCodeLensResolveOptions;
2700
3042
  }
2701
3043
  /**
2702
3044
  * @since 3.16.0
@@ -2743,6 +3085,7 @@ export declare namespace CodeLensRequest {
2743
3085
  const method: 'textDocument/codeLens';
2744
3086
  const messageDirection: MessageDirection;
2745
3087
  const type: ProtocolRequestType<CodeLensParams, CodeLens[] | null, CodeLens[], void, CodeLensRegistrationOptions>;
3088
+ const capabilities: CM<"textDocument.codeLens", "codeLensProvider">;
2746
3089
  }
2747
3090
  /**
2748
3091
  * A request to resolve a command for a given code lens.
@@ -2751,6 +3094,7 @@ export declare namespace CodeLensResolveRequest {
2751
3094
  const method: 'codeLens/resolve';
2752
3095
  const messageDirection: MessageDirection;
2753
3096
  const type: ProtocolRequestType<CodeLens, CodeLens, never, void, void>;
3097
+ const capabilities: CM<"textDocument.codeLens.resolveSupport", "codeLensProvider.resolveProvider">;
2754
3098
  }
2755
3099
  /**
2756
3100
  * A request to refresh all code actions
@@ -2761,6 +3105,7 @@ export declare namespace CodeLensRefreshRequest {
2761
3105
  const method: `workspace/codeLens/refresh`;
2762
3106
  const messageDirection: MessageDirection;
2763
3107
  const type: ProtocolRequestType0<void, void, void, void>;
3108
+ const capabilities: CM<"workspace.codeLens", undefined>;
2764
3109
  }
2765
3110
  /**
2766
3111
  * The client capabilities of a {@link DocumentLinkRequest}.
@@ -2807,6 +3152,7 @@ export declare namespace DocumentLinkRequest {
2807
3152
  const method: 'textDocument/documentLink';
2808
3153
  const messageDirection: MessageDirection;
2809
3154
  const type: ProtocolRequestType<DocumentLinkParams, DocumentLink[] | null, DocumentLink[], void, DocumentLinkRegistrationOptions>;
3155
+ const capabilities: CM<"textDocument.documentLink", "documentLinkProvider">;
2810
3156
  }
2811
3157
  /**
2812
3158
  * Request to resolve additional information for a given document link. The request's
@@ -2817,6 +3163,7 @@ export declare namespace DocumentLinkResolveRequest {
2817
3163
  const method: 'documentLink/resolve';
2818
3164
  const messageDirection: MessageDirection;
2819
3165
  const type: ProtocolRequestType<DocumentLink, DocumentLink, never, void, void>;
3166
+ const capabilities: CM<"textDocument.documentLink", "documentLinkProvider.resolveProvider">;
2820
3167
  }
2821
3168
  /**
2822
3169
  * Client capabilities of a {@link DocumentFormattingRequest}.
@@ -2857,6 +3204,7 @@ export declare namespace DocumentFormattingRequest {
2857
3204
  const method: 'textDocument/formatting';
2858
3205
  const messageDirection: MessageDirection;
2859
3206
  const type: ProtocolRequestType<DocumentFormattingParams, TextEdit[] | null, never, void, DocumentFormattingRegistrationOptions>;
3207
+ const capabilities: CM<"textDocument.formatting", "documentFormattingProvider">;
2860
3208
  }
2861
3209
  /**
2862
3210
  * Client capabilities of a {@link DocumentRangeFormattingRequest}.
@@ -2870,7 +3218,6 @@ export interface DocumentRangeFormattingClientCapabilities {
2870
3218
  * Whether the client supports formatting multiple ranges at once.
2871
3219
  *
2872
3220
  * @since 3.18.0
2873
- * @proposed
2874
3221
  */
2875
3222
  rangesSupport?: boolean;
2876
3223
  }
@@ -2895,7 +3242,6 @@ export interface DocumentRangeFormattingParams extends WorkDoneProgressParams {
2895
3242
  * The parameters of a {@link DocumentRangesFormattingRequest}.
2896
3243
  *
2897
3244
  * @since 3.18.0
2898
- * @proposed
2899
3245
  */
2900
3246
  export interface DocumentRangesFormattingParams extends WorkDoneProgressParams {
2901
3247
  /**
@@ -2919,7 +3265,6 @@ export interface DocumentRangeFormattingOptions extends WorkDoneProgressOptions
2919
3265
  * Whether the server supports formatting multiple ranges at once.
2920
3266
  *
2921
3267
  * @since 3.18.0
2922
- * @proposed
2923
3268
  */
2924
3269
  rangesSupport?: boolean;
2925
3270
  }
@@ -2935,17 +3280,18 @@ export declare namespace DocumentRangeFormattingRequest {
2935
3280
  const method: 'textDocument/rangeFormatting';
2936
3281
  const messageDirection: MessageDirection;
2937
3282
  const type: ProtocolRequestType<DocumentRangeFormattingParams, TextEdit[] | null, never, void, DocumentRangeFormattingRegistrationOptions>;
3283
+ const capabilities: CM<"textDocument.rangeFormatting", "documentRangeFormattingProvider">;
2938
3284
  }
2939
3285
  /**
2940
3286
  * A request to format ranges in a document.
2941
3287
  *
2942
3288
  * @since 3.18.0
2943
- * @proposed
2944
3289
  */
2945
3290
  export declare namespace DocumentRangesFormattingRequest {
2946
3291
  const method: 'textDocument/rangesFormatting';
2947
3292
  const messageDirection: MessageDirection;
2948
3293
  const type: ProtocolRequestType<DocumentRangesFormattingParams, TextEdit[] | null, never, void, DocumentRangeFormattingRegistrationOptions>;
3294
+ const capabilities: CM<"textDocument.rangeFormatting.rangesSupport", "documentRangeFormattingProvider.rangesSupport">;
2949
3295
  }
2950
3296
  /**
2951
3297
  * Client capabilities of a {@link DocumentOnTypeFormattingRequest}.
@@ -3007,6 +3353,7 @@ export declare namespace DocumentOnTypeFormattingRequest {
3007
3353
  const method: 'textDocument/onTypeFormatting';
3008
3354
  const messageDirection: MessageDirection;
3009
3355
  const type: ProtocolRequestType<DocumentOnTypeFormattingParams, TextEdit[] | null, never, void, DocumentOnTypeFormattingRegistrationOptions>;
3356
+ const capabilities: CM<"textDocument.onTypeFormatting", "documentOnTypeFormattingProvider">;
3010
3357
  }
3011
3358
  export declare namespace PrepareSupportDefaultBehavior {
3012
3359
  /**
@@ -3051,15 +3398,7 @@ export interface RenameClientCapabilities {
3051
3398
  /**
3052
3399
  * The parameters of a {@link RenameRequest}.
3053
3400
  */
3054
- export interface RenameParams extends WorkDoneProgressParams {
3055
- /**
3056
- * The document to rename.
3057
- */
3058
- textDocument: TextDocumentIdentifier;
3059
- /**
3060
- * The position at which this request was sent.
3061
- */
3062
- position: Position;
3401
+ export interface RenameParams extends TextDocumentPositionParams, WorkDoneProgressParams {
3063
3402
  /**
3064
3403
  * The new name of the symbol. If the given name is not valid the
3065
3404
  * request must return a {@link ResponseError} with an
@@ -3090,15 +3429,24 @@ export declare namespace RenameRequest {
3090
3429
  const method: 'textDocument/rename';
3091
3430
  const messageDirection: MessageDirection;
3092
3431
  const type: ProtocolRequestType<RenameParams, WorkspaceEdit | null, never, void, RenameRegistrationOptions>;
3432
+ const capabilities: CM<"textDocument.rename", "renameProvider">;
3093
3433
  }
3094
3434
  export interface PrepareRenameParams extends TextDocumentPositionParams, WorkDoneProgressParams {
3095
3435
  }
3096
- export type PrepareRenameResult = Range | {
3436
+ /**
3437
+ * @since 3.18.0
3438
+ */
3439
+ export type PrepareRenamePlaceholder = {
3097
3440
  range: Range;
3098
3441
  placeholder: string;
3099
- } | {
3442
+ };
3443
+ /**
3444
+ * @since 3.18.0
3445
+ */
3446
+ export type PrepareRenameDefaultBehavior = {
3100
3447
  defaultBehavior: boolean;
3101
3448
  };
3449
+ export type PrepareRenameResult = Range | PrepareRenamePlaceholder | PrepareRenameDefaultBehavior;
3102
3450
  /**
3103
3451
  * A request to test and perform the setup necessary for a rename.
3104
3452
  *
@@ -3108,6 +3456,7 @@ export declare namespace PrepareRenameRequest {
3108
3456
  const method: 'textDocument/prepareRename';
3109
3457
  const messageDirection: MessageDirection;
3110
3458
  const type: ProtocolRequestType<PrepareRenameParams, PrepareRenameResult | null, never, void, void>;
3459
+ const capabilities: CM<"textDocument.rename.prepareSupport", "renameProvider.prepareProvider">;
3111
3460
  }
3112
3461
  /**
3113
3462
  * The client capabilities of a {@link ExecuteCommandRequest}.
@@ -3153,7 +3502,19 @@ export declare namespace ExecuteCommandRequest {
3153
3502
  const method: 'workspace/executeCommand';
3154
3503
  const messageDirection: MessageDirection;
3155
3504
  const type: ProtocolRequestType<ExecuteCommandParams, any, never, void, ExecuteCommandRegistrationOptions>;
3505
+ const capabilities: CM<"workspace.executeCommand", "executeCommandProvider">;
3156
3506
  }
3507
+ /**
3508
+ * @since 3.18.0
3509
+ */
3510
+ export type ChangeAnnotationsSupportOptions = {
3511
+ /**
3512
+ * Whether the client groups edits with equal labels into tree nodes,
3513
+ * for instance all edits labelled with "Changes in Strings" would
3514
+ * be a tree node.
3515
+ */
3516
+ groupsOnLabel?: boolean;
3517
+ };
3157
3518
  export interface WorkspaceEditClientCapabilities {
3158
3519
  /**
3159
3520
  * The client supports versioned document changes in `WorkspaceEdit`s
@@ -3189,14 +3550,19 @@ export interface WorkspaceEditClientCapabilities {
3189
3550
  *
3190
3551
  * @since 3.16.0
3191
3552
  */
3192
- changeAnnotationSupport?: {
3193
- /**
3194
- * Whether the client groups edits with equal labels into tree nodes,
3195
- * for instance all edits labelled with "Changes in Strings" would
3196
- * be a tree node.
3197
- */
3198
- groupsOnLabel?: boolean;
3199
- };
3553
+ changeAnnotationSupport?: ChangeAnnotationsSupportOptions;
3554
+ /**
3555
+ * Whether the client supports `WorkspaceEditMetadata` in `WorkspaceEdit`s.
3556
+ *
3557
+ * @since 3.18.0
3558
+ */
3559
+ metadataSupport?: boolean;
3560
+ /**
3561
+ * Whether the client supports snippets as text edits.
3562
+ *
3563
+ * @since 3.18.0
3564
+ */
3565
+ snippetEditSupport?: boolean;
3200
3566
  }
3201
3567
  /**
3202
3568
  * The parameters passed via an apply workspace edit request.
@@ -3212,6 +3578,12 @@ export interface ApplyWorkspaceEditParams {
3212
3578
  * The edits to apply.
3213
3579
  */
3214
3580
  edit: WorkspaceEdit;
3581
+ /**
3582
+ * Additional data about the edit.
3583
+ *
3584
+ * @since 3.18.0
3585
+ */
3586
+ metadata?: WorkspaceEditMetadata;
3215
3587
  }
3216
3588
  /**
3217
3589
  * The result returned from the apply workspace edit request.
@@ -3247,6 +3619,8 @@ export declare namespace ApplyWorkspaceEditRequest {
3247
3619
  const method: 'workspace/applyEdit';
3248
3620
  const messageDirection: MessageDirection;
3249
3621
  const type: ProtocolRequestType<ApplyWorkspaceEditParams, ApplyWorkspaceEditResult, never, void, void>;
3622
+ type HandlerSignature = RequestHandler<ApplyWorkspaceEditParams, ApplyWorkspaceEditResult, void>;
3623
+ const capabilities: CM<"workspace.applyEdit", undefined>;
3250
3624
  }
3251
- export { ImplementationRequest, ImplementationParams, ImplementationRegistrationOptions, ImplementationOptions, TypeDefinitionRequest, TypeDefinitionParams, TypeDefinitionRegistrationOptions, TypeDefinitionOptions, WorkspaceFoldersRequest, DidChangeWorkspaceFoldersNotification, DidChangeWorkspaceFoldersParams, WorkspaceFoldersChangeEvent, ConfigurationRequest, ConfigurationParams, ConfigurationItem, DocumentColorRequest, ColorPresentationRequest, DocumentColorOptions, DocumentColorParams, ColorPresentationParams, DocumentColorRegistrationOptions, FoldingRangeClientCapabilities, FoldingRangeOptions, FoldingRangeRequest, FoldingRangeParams, FoldingRangeRegistrationOptions, FoldingRangeRefreshRequest, DeclarationClientCapabilities, DeclarationRequest, DeclarationParams, DeclarationRegistrationOptions, DeclarationOptions, SelectionRangeClientCapabilities, SelectionRangeOptions, SelectionRangeParams, SelectionRangeRequest, SelectionRangeRegistrationOptions, WorkDoneProgressBegin, WorkDoneProgressReport, WorkDoneProgressEnd, WorkDoneProgress, WorkDoneProgressCreateParams, WorkDoneProgressCreateRequest, WorkDoneProgressCancelParams, WorkDoneProgressCancelNotification, CallHierarchyClientCapabilities, CallHierarchyOptions, CallHierarchyRegistrationOptions, CallHierarchyIncomingCallsParams, CallHierarchyIncomingCallsRequest, CallHierarchyOutgoingCallsParams, CallHierarchyOutgoingCallsRequest, CallHierarchyPrepareParams, CallHierarchyPrepareRequest, SemanticTokensPartialResult, SemanticTokensDeltaPartialResult, TokenFormat, SemanticTokensClientCapabilities, SemanticTokensOptions, SemanticTokensRegistrationOptions, SemanticTokensParams, SemanticTokensRequest, SemanticTokensDeltaParams, SemanticTokensDeltaRequest, SemanticTokensRangeParams, SemanticTokensRangeRequest, SemanticTokensRefreshRequest, SemanticTokensRegistrationType, ShowDocumentParams, ShowDocumentRequest, ShowDocumentResult, ShowDocumentClientCapabilities, LinkedEditingRangeClientCapabilities, LinkedEditingRanges, LinkedEditingRangeOptions, LinkedEditingRangeParams, LinkedEditingRangeRegistrationOptions, LinkedEditingRangeRequest, FileOperationOptions, FileOperationClientCapabilities, FileOperationRegistrationOptions, FileOperationPatternOptions, FileOperationPatternKind, DidCreateFilesNotification, CreateFilesParams, FileCreate, WillCreateFilesRequest, DidRenameFilesNotification, RenameFilesParams, FileRename, WillRenameFilesRequest, DidDeleteFilesNotification, DeleteFilesParams, FileDelete, WillDeleteFilesRequest, UniquenessLevel, MonikerKind, Moniker, MonikerClientCapabilities, MonikerOptions, MonikerRegistrationOptions, MonikerParams, MonikerRequest, TypeHierarchyClientCapabilities, TypeHierarchyOptions, TypeHierarchyRegistrationOptions, TypeHierarchyPrepareParams, TypeHierarchyPrepareRequest, TypeHierarchySubtypesParams, TypeHierarchySubtypesRequest, TypeHierarchySupertypesParams, TypeHierarchySupertypesRequest, InlineValueClientCapabilities, InlineValueOptions, InlineValueRegistrationOptions, InlineValueWorkspaceClientCapabilities, InlineValueParams, InlineValueRequest, InlineValueRefreshRequest, InlayHintClientCapabilities, InlayHintOptions, InlayHintRegistrationOptions, InlayHintWorkspaceClientCapabilities, InlayHintParams, InlayHintRequest, InlayHintResolveRequest, InlayHintRefreshRequest, DiagnosticClientCapabilities, DiagnosticOptions, DiagnosticRegistrationOptions, DiagnosticServerCancellationData, DocumentDiagnosticParams, DocumentDiagnosticReportKind, FullDocumentDiagnosticReport, RelatedFullDocumentDiagnosticReport, UnchangedDocumentDiagnosticReport, RelatedUnchangedDocumentDiagnosticReport, DocumentDiagnosticReport, DocumentDiagnosticReportPartialResult, DocumentDiagnosticRequest, PreviousResultId, WorkspaceDiagnosticParams, WorkspaceFullDocumentDiagnosticReport, WorkspaceUnchangedDocumentDiagnosticReport, WorkspaceDocumentDiagnosticReport, WorkspaceDiagnosticReport, WorkspaceDiagnosticReportPartialResult, WorkspaceDiagnosticRequest, DiagnosticRefreshRequest, NotebookDocumentSyncClientCapabilities, NotebookCellKind, ExecutionSummary, NotebookCell, NotebookDocument, NotebookDocumentIdentifier, VersionedNotebookDocumentIdentifier, NotebookDocumentSyncOptions, NotebookDocumentSyncRegistrationOptions, NotebookDocumentSyncRegistrationType, DidOpenNotebookDocumentParams, DidOpenNotebookDocumentNotification, NotebookCellArrayChange, NotebookDocumentChangeEvent, DidChangeNotebookDocumentParams, DidChangeNotebookDocumentNotification, DidSaveNotebookDocumentParams, DidSaveNotebookDocumentNotification, DidCloseNotebookDocumentParams, DidCloseNotebookDocumentNotification, InlineCompletionClientCapabilities, InlineCompletionOptions, InlineCompletionParams, InlineCompletionRegistrationOptions, InlineCompletionRequest };
3625
+ export { ImplementationRequest, ImplementationParams, ImplementationRegistrationOptions, ImplementationOptions, TypeDefinitionRequest, TypeDefinitionParams, TypeDefinitionRegistrationOptions, TypeDefinitionOptions, WorkspaceFoldersRequest, DidChangeWorkspaceFoldersNotification, DidChangeWorkspaceFoldersParams, WorkspaceFoldersChangeEvent, ConfigurationRequest, ConfigurationParams, ConfigurationItem, DocumentColorRequest, ColorPresentationRequest, DocumentColorOptions, DocumentColorParams, ColorPresentationParams, DocumentColorRegistrationOptions, FoldingRangeClientCapabilities, FoldingRangeOptions, FoldingRangeRequest, FoldingRangeParams, FoldingRangeRegistrationOptions, FoldingRangeRefreshRequest, DeclarationClientCapabilities, DeclarationRequest, DeclarationParams, DeclarationRegistrationOptions, DeclarationOptions, SelectionRangeClientCapabilities, SelectionRangeOptions, SelectionRangeParams, SelectionRangeRequest, SelectionRangeRegistrationOptions, WorkDoneProgressBegin, WorkDoneProgressReport, WorkDoneProgressEnd, WorkDoneProgress, WorkDoneProgressCreateParams, WorkDoneProgressCreateRequest, WorkDoneProgressCancelParams, WorkDoneProgressCancelNotification, CallHierarchyClientCapabilities, CallHierarchyOptions, CallHierarchyRegistrationOptions, CallHierarchyIncomingCallsParams, CallHierarchyIncomingCallsRequest, CallHierarchyOutgoingCallsParams, CallHierarchyOutgoingCallsRequest, CallHierarchyPrepareParams, CallHierarchyPrepareRequest, SemanticTokensPartialResult, SemanticTokensDeltaPartialResult, TokenFormat, SemanticTokensClientCapabilities, SemanticTokensOptions, SemanticTokensRegistrationOptions, SemanticTokensParams, SemanticTokensRequest, SemanticTokensDeltaParams, SemanticTokensDeltaRequest, SemanticTokensRangeParams, SemanticTokensRangeRequest, SemanticTokensRefreshRequest, SemanticTokensRegistrationType, ShowDocumentParams, ShowDocumentRequest, ShowDocumentResult, ShowDocumentClientCapabilities, LinkedEditingRangeClientCapabilities, LinkedEditingRanges, LinkedEditingRangeOptions, LinkedEditingRangeParams, LinkedEditingRangeRegistrationOptions, LinkedEditingRangeRequest, FileOperationOptions, FileOperationClientCapabilities, FileOperationRegistrationOptions, FileOperationPatternOptions, FileOperationPatternKind, DidCreateFilesNotification, CreateFilesParams, FileCreate, WillCreateFilesRequest, DidRenameFilesNotification, RenameFilesParams, FileRename, WillRenameFilesRequest, DidDeleteFilesNotification, DeleteFilesParams, FileDelete, WillDeleteFilesRequest, UniquenessLevel, MonikerKind, Moniker, MonikerClientCapabilities, MonikerOptions, MonikerRegistrationOptions, MonikerParams, MonikerRequest, TypeHierarchyClientCapabilities, TypeHierarchyOptions, TypeHierarchyRegistrationOptions, TypeHierarchyPrepareParams, TypeHierarchyPrepareRequest, TypeHierarchySubtypesParams, TypeHierarchySubtypesRequest, TypeHierarchySupertypesParams, TypeHierarchySupertypesRequest, InlineValueClientCapabilities, InlineValueOptions, InlineValueRegistrationOptions, InlineValueWorkspaceClientCapabilities, InlineValueParams, InlineValueRequest, InlineValueRefreshRequest, InlayHintClientCapabilities, InlayHintOptions, InlayHintRegistrationOptions, InlayHintWorkspaceClientCapabilities, InlayHintParams, InlayHintRequest, InlayHintResolveRequest, InlayHintRefreshRequest, DiagnosticClientCapabilities, DiagnosticOptions, DiagnosticRegistrationOptions, DiagnosticServerCancellationData, DocumentDiagnosticParams, DocumentDiagnosticReportKind, FullDocumentDiagnosticReport, RelatedFullDocumentDiagnosticReport, UnchangedDocumentDiagnosticReport, RelatedUnchangedDocumentDiagnosticReport, DocumentDiagnosticReport, DocumentDiagnosticReportPartialResult, DocumentDiagnosticRequest, PreviousResultId, WorkspaceDiagnosticParams, WorkspaceFullDocumentDiagnosticReport, WorkspaceUnchangedDocumentDiagnosticReport, WorkspaceDocumentDiagnosticReport, WorkspaceDiagnosticReport, WorkspaceDiagnosticReportPartialResult, WorkspaceDiagnosticRequest, DiagnosticRefreshRequest, NotebookDocumentSyncClientCapabilities, NotebookCellKind, ExecutionSummary, NotebookCell, NotebookDocument, NotebookDocumentIdentifier, VersionedNotebookDocumentIdentifier, NotebookDocumentSyncOptions, NotebookDocumentSyncRegistrationOptions, NotebookDocumentSyncRegistrationType, DidOpenNotebookDocumentParams, DidOpenNotebookDocumentNotification, NotebookCellArrayChange, NotebookDocumentChangeEvent, DidChangeNotebookDocumentParams, DidChangeNotebookDocumentNotification, DidSaveNotebookDocumentParams, DidSaveNotebookDocumentNotification, DidCloseNotebookDocumentParams, DidCloseNotebookDocumentNotification, NotebookDocumentFilterWithCells, NotebookDocumentFilterWithNotebook, InlineCompletionClientCapabilities, InlineCompletionOptions, InlineCompletionParams, InlineCompletionRegistrationOptions, InlineCompletionRequest, TextDocumentContentClientCapabilities, TextDocumentContentOptions, TextDocumentContentRegistrationOptions, TextDocumentContentParams, TextDocumentContentResult, TextDocumentContentRequest, TextDocumentContentRefreshParams, TextDocumentContentRefreshRequest };
3252
3626
  export { DocumentColorOptions as ColorProviderOptions, DocumentColorOptions as ColorOptions, FoldingRangeOptions as FoldingRangeProviderOptions, SelectionRangeOptions as SelectionRangeProviderOptions, DocumentColorRegistrationOptions as ColorRegistrationOptions };