From bfc543d7a3c9a7a63ea529fc46d0ba9ca7612431 Mon Sep 17 00:00:00 2001 From: "N. Taylor Mullen" Date: Sat, 5 Jun 2021 13:46:45 -0700 Subject: [PATCH] Add linkability all the way down to document symbol. - Found that adding a newline after the anchor holders would result in the markdown coloring not getting corrupted in VSCode + no impact on the actual rendered output. Therefore went back and ensured there was a newline after every anchor. --- _data/linkableTypes.yml | 316 +++++++++++++++++++ _specifications/specification-3-17.md | 420 ++++++++++++++++++++++++-- 2 files changed, 714 insertions(+), 22 deletions(-) diff --git a/_data/linkableTypes.yml b/_data/linkableTypes.yml index 0387300..62632df 100644 --- a/_data/linkableTypes.yml +++ b/_data/linkableTypes.yml @@ -152,3 +152,319 @@ link: '#logTrace' - type: 'SetTraceParams' link: '#setTrace' + - type: 'ShowMessageParams' + link: '#window_showMessage' + - type: 'MessageType' + link: '#messageType' + - type: 'ShowMessageRequestClientCapabilities' + link: '#window_showMessageRequest' + - type: 'ShowMessageRequestParams' + link: '#showMessageRequestParams' + - type: 'MessageActionItem' + link: '#messageActionItem' + - type: 'ShowDocumentClientCapabilities' + link: '#window_showDocument' + - type: 'ShowDocumentParams' + link: '#showDocumentParams' + - type: 'ShowDocumentResult' + link: '#showDocumentResult' + - type: 'LogMessageParams' + link: '#logMessageParams' + - type: 'WorkDoneProgressCreateParams' + link: '#window_workDoneProgress_create' + - type: 'WorkDoneProgressCancelParams' + link: '#window_workDoneProgress_cancel' + - type: 'telemetry/event' + link: '#telemetry_event' + - type: 'Registration' + link: '#registration' + - type: 'RegistrationParams' + link: '#registrationParams' + - type: 'Unregistration' + link: '#unregistration' + - type: 'UnregistrationParams' + link: '#unregistrationParams' + - type: 'WorkspaceFoldersServerCapabilities' + link: '#workspaceFoldersServerCapabilities' + - type: 'WorkspaceFolder' + link: '#workspaceFolder' + - type: 'workspace/workspaceFolders' + link: '#workspace_workspaceFolders' + - type: 'DidChangeWorkspaceFoldersParams' + link: '#didChangeWorkspaceFoldersParams' + - type: 'WorkspaceFoldersChangeEvent' + link: '#workspaceFoldersChangeEvent' + - type: 'DidChangeConfigurationClientCapabilities' + link: '#didChangeConfigurationClientCapabilities' + - type: 'DidChangeConfigurationParams' + link: '#didChangeConfigurationParams' + - type: 'ConfigurationParams' + link: '#configurationParams' + - type: 'ConfigurationItem' + link: '#configurationItem' + - type: 'DidChangeWatchedFilesClientCapabilities' + link: '#didChangeWatchedFilesClientCapabilities' + - type: 'DidChangeWatchedFilesRegistrationOptions' + link: '#didChangeWatchedFilesRegistrationOptions' + - type: 'FileSystemWatcher' + link: '#fileSystemWatcher' + - type: 'WatchKind' + link: '#watchKind' + - type: 'DidChangeWatchedFilesParams' + link: '#didChangeWatchedFilesParams' + - type: 'FileEvent' + link: '#fileEvent' + - type: 'FileChangeType' + link: '#fileChangeType' + - type: 'WorkspaceSymbolClientCapabilities' + link: '#workspace_symbol' + - type: 'WorkspaceSymbolOptions' + link: '#workspaceSymbolOptions' + - type: 'WorkspaceSymbolRegistrationOptions' + link: '#workspaceSymbolRegistrationOptions' + - type: 'WorkspaceSymbolParams' + link: '#workspaceSymbolParams' + - type: 'ExecuteCommandClientCapabilities' + link: '#executeCommandClientCapabilities' + - type: 'ExecuteCommandOptions' + link: '#executeCommandOptions' + - type: 'ExecuteCommandRegistrationOptions' + link: '#executeCommandRegistrationOptions' + - type: 'ExecuteCommandParams' + link: '#executeCommandParams' + - type: 'workspace/applyEdit' + link: '#workspace_applyEdit' + - type: 'ApplyWorkspaceEditParams' + link: '#applyWorkspaceEditParams' + - type: 'ApplyWorkspaceEditResponse' + link: '#applyWorkspaceEditResponse' + - type: 'workspace/willCreateFiles' + link: '#workspace_willCreateFiles' + - type: 'FileOperationRegistrationOptions' + link: '#fileOperationRegistrationOptions' + - type: 'FileOperationPatternKind' + link: '#fileOperationPatternKind' + - type: 'FileOperationPatternOptions' + link: '#fileOperationPatternOptions' + - type: 'FileOperationPattern' + link: '#fileOperationPattern' + - type: 'FileOperationFilter' + link: '#fileOperationFilter' + - type: 'CreateFilesParams' + link: '#createFilesParams' + - type: 'FileCreate' + link: '#fileCreate' + - type: 'workspace/didCreateFiles' + link: '#workspace_didCreateFiles' + - type: 'workspace/willRenameFiles' + link: '#workspace_willRenameFiles' + - type: 'RenameFilesParams' + link: '#renameFilesParams' + - type: 'FileRename' + link: '#fileRename' + - type: 'workspace/didRenameFiles' + link: '#workspace_didRenameFiles' + - type: 'workspace/willDeleteFiles' + link: '#workspace_willDeleteFiles' + - type: 'DeleteFilesParams' + link: '#deleteFilesParams' + - type: 'FileDelete' + link: '#fileDelete' + - type: 'workspace/didDeleteFiles' + link: '#workspace_didDeleteFiles' + - type: 'TextDocumentSyncKind' + link: '#textDocumentSyncKind' + - type: 'TextDocumentSyncOptions' + link: '#textDocumentSyncOptions' + - type: 'textDocument/didOpen' + link: '#textDocument_didOpen' + - type: 'DidOpenTextDocumentParams' + link: '#didOpenTextDocumentParams' + - type: 'textDocument/didChange' + link: '#textDocument_didChange' + - type: 'TextDocumentChangeRegistrationOptions' + link: '#textDocumentChangeRegistrationOptions' + - type: 'DidChangeTextDocumentParams' + link: '#didChangeTextDocumentParams' + - type: 'TextDocumentContentChangeEvent' + link: '#textDocumentContentChangeEvent' + - type: 'textDocument/willSave' + link: '#textDocument_willSave' + - type: 'WillSaveTextDocumentParams' + link: '#willSaveTextDocumentParams' + - type: 'TextDocumentSaveReason' + link: '#textDocumentSaveReason' + - type: 'textDocument/willSaveWaitUntil' + link: '#textDocument_willSaveWaitUntil' + - type: 'textDocument/didSave' + link: '#textDocument_didSave' + - type: 'SaveOptions' + link: '#saveOptions' + - type: 'TextDocumentSaveRegistrationOptions' + link: '#textDocumentSaveRegistrationOptions' + - type: 'DidSaveTextDocumentParams' + link: '#didSaveTextDocumentParams' + - type: 'textDocument/didClose' + link: '#textDocument_didClose' + - type: 'DidCloseTextDocumentParams' + link: '#didCloseTextDocumentParams' + - type: 'TextDocumentSyncClientCapabilities' + link: '#textDocumentSyncClientCapabilities' + - type: 'TextDocumentSyncKind' + link: '#textDocumentSyncKind' + - type: 'TextDocumentSyncOptions' + link: '#textDocumentSyncOptions' + - type: 'textDocument/publishDiagnostics' + link: '#textDocument_publishDiagnostics' + - type: 'PublishDiagnosticsClientCapabilities' + link: '#publishDiagnosticsClientCapabilities' + - type: 'PublishDiagnosticsParams' + link: '#publishDiagnosticsParams' + - type: 'textDocument/completion' + link: '#textDocument_completion' + - type: 'CompletionClientCapabilities' + link: '#completionClientCapabilities' + - type: 'CompletionOptions' + link: '#completionOptions' + - type: 'CompletionRegistrationOptions' + link: '#completionRegistrationOptions' + - type: 'CompletionParams' + link: '#completionParams' + - type: 'CompletionTriggerKind' + link: '#completionTriggerKind' + - type: 'CompletionContext' + link: '#completionContext' + - type: 'CompletionList' + link: '#completionList' + - type: 'InsertTextFormat' + link: '#insertTextFormat' + - type: 'CompletionItemTag' + link: '#completionItemTag' + - type: 'InsertReplaceEdit' + link: '#insertReplaceEdit' + - type: 'InsertTextMode' + link: '#insertTextMode' + - type: 'CompletionItemLabelDetails' + link: '#completionItemLabelDetails' + - type: 'CompletionItem' + link: '#completionItem' + - type: 'CompletionItemKind' + link: '#completionItemKind' + - type: 'completionItem/resolve' + link: '#completionItem_resolve' + - type: 'textDocument/hover' + link: '#textDocument_hover' + - type: 'HoverClientCapabilities' + link: '#hoverClientCapabilities' + - type: 'HoverOptions' + link: '#hoverOptions' + - type: 'HoverRegistrationOptions' + link: '#hoverRegistrationOptions' + - type: 'HoverParams' + link: '#hoverParams' + - type: 'Hover' + link: '#hover' + - type: 'MarkedString' + link: '#markedString' + - type: 'textDocument/signatureHelp' + link: '#textDocument_signatureHelp' + - type: 'SignatureHelpClientCapabilities' + link: '#signatureHelpClientCapabilities' + - type: 'SignatureHelpOptions' + link: '#signatureHelpOptions' + - type: 'SignatureHelpRegistrationOptions' + link: '#signatureHelpRegistrationOptions' + - type: 'SignatureHelpParams' + link: '#signatureHelpParams' + - type: 'SignatureHelpTriggerKind' + link: '#signatureHelpTriggerKind' + - type: 'SignatureHelpContext' + link: '#signatureHelpContext' + - type: 'SignatureHelp' + link: '#signatureHelp' + - type: 'SignatureInformation' + link: '#signatureInformation' + - type: 'ParameterInformation' + link: '#parameterInformation' + - type: 'textDocument/declaration' + link: '#textDocument_declaration' + - type: 'DeclarationClientCapabilities' + link: '#declarationClientCapabilities' + - type: 'DeclarationOptions' + link: '#declarationOptions' + - type: 'DeclarationRegistrationOptions' + link: '#declarationRegistrationOptions' + - type: 'DeclarationParams' + link: '#declarationParams' + - type: 'textDocument/definition' + link: '#textDocument_definition' + - type: 'DefinitionClientCapabilities' + link: '#definitionClientCapabilities' + - type: 'DefinitionOptions' + link: '#definitionOptions' + - type: 'DefinitionRegistrationOptions' + link: '#definitionRegistrationOptions' + - type: 'DefinitionParams' + link: '#definitionParams' + - type: 'textDocument/typeDefinition' + link: '#textDocument_typeDefinition' + - type: 'TypeDefinitionClientCapabilities' + link: '#typeDefinitionClientCapabilities' + - type: 'TypeDefinitionOptions' + link: '#typeDefinitionOptions' + - type: 'TypeDefinitionRegistrationOptions' + link: '#typeDefinitionRegistrationOptions' + - type: 'TypeDefinitionParams' + link: '#typeDefinitionParams' + - type: 'textDocument/implementation' + link: '#textDocument_implementation' + - type: 'ImplementationClientCapabilities' + link: '#implementationClientCapabilities' + - type: 'ImplementationOptions' + link: '#implementationOptions' + - type: 'ImplementationRegistrationOptions' + link: '#implementationRegistrationOptions' + - type: 'ImplementationParams' + link: '#implementationParams' + - type: 'textDocument/references' + link: '#textDocument_references' + - type: 'ReferenceClientCapabilities' + link: '#referenceClientCapabilities' + - type: 'ReferenceOptions' + link: '#referenceOptions' + - type: 'ReferenceRegistrationOptions' + link: '#referenceRegistrationOptions' + - type: 'ReferenceParams' + link: '#referenceParams' + - type: 'ReferenceContext' + link: '#referenceContext' + - type: 'textDocument/documentHighlight' + link: '#textDocument_documentHighlight' + - type: 'DocumentHighlightOptions' + link: '#documentHighlightOptions' + - type: 'DocumentHighlightRegistrationOptions' + link: '#documentHighlightRegistrationOptions' + - type: 'DocumentHighlightParams' + link: '#documentHighlightParams' + - type: 'DocumentHighlight' + link: '#documentHighlight' + - type: 'DocumentHighlightKind' + link: '#documentHighlightKind' + - type: 'textDocument/documentSymbol' + link: '#textDocument_documentSymbol' + - type: 'DocumentSymbolClientCapabilities' + link: '#documentSymbolClientCapabilities' + - type: 'DocumentSymbolOptions' + link: '#documentSymbolOptions' + - type: 'DocumentSymbolRegistrationOptions' + link: '#documentSymbolRegistrationOptions' + - type: 'DocumentSymbolParams' + link: '#documentSymbolParams' + - type: 'SymbolKind' + link: '#symbolKind' + - type: 'SymbolTag' + link: '#symbolTag' + - type: 'DocumentSymbol' + link: '#documentSymbol' + - type: 'SymbolInformation' + link: '#symbolInformation' \ No newline at end of file diff --git a/_specifications/specification-3-17.md b/_specifications/specification-3-17.md index c710467..3e37071 100644 --- a/_specifications/specification-3-17.md +++ b/_specifications/specification-3-17.md @@ -70,6 +70,7 @@ The following TypeScript definitions describe the base [JSON-RPC protocol](http: The protocol use the following definitions for integers, unsigned integers and decimal numbers:
+ ```typescript /** * Defines an integer number in the range of -2^31 to 2^31 - 1. @@ -78,6 +79,7 @@ export type integer = number; ```
+ ```typescript /** * Defines an unsigned integer number in the range of 0 to 2^31 - 1. @@ -86,6 +88,7 @@ export type uinteger = number; ```
+ ```typescript /** * Defines a decimal number. Since decimal numbers are very @@ -102,6 +105,7 @@ export type decimal = number; A general message as defined by JSON-RPC. The language server protocol always uses "2.0" as the `jsonrpc` version.
+ ```typescript interface Message { jsonrpc: string; @@ -156,6 +160,7 @@ interface ResponseMessage extends Message { ```
+ ```typescript interface ResponseError { /** @@ -177,6 +182,7 @@ interface ResponseError { ```
+ ```typescript export namespace ErrorCodes { // Defined by JSON RPC @@ -363,6 +369,7 @@ We also maintain a node module to parse a string into `scheme`, `authority`, `pa Many of the interfaces contain fields that correspond to the URI of a document. For clarity, the type of such a field is declared as a `DocumentUri`. Over the wire, it will still be transferred as a string, but this guarantees that the contents of that string can be parsed as a valid URI.
+ ```typescript type DocumentUri = string; ``` @@ -591,6 +598,7 @@ export interface Diagnostic { The protocol currently supports the following diagnostic severities and tags:
+ ```typescript export namespace DiagnosticSeverity { /** @@ -615,6 +623,7 @@ export type DiagnosticSeverity = 1 | 2 | 3 | 4; ```
+ ```typescript /** * The diagnostic tags. @@ -643,6 +652,7 @@ export type DiagnosticTag = 1 | 2; `DiagnosticRelatedInformation` is defined as follows:
+ ```typescript /** * Represents a related message and source code location for a diagnostic. @@ -665,6 +675,7 @@ export interface DiagnosticRelatedInformation { `CodeDescription` is defined as follows:
+ ```typescript /** * Structure to capture a description for an error code. @@ -726,6 +737,7 @@ interface TextEdit { Since 3.16.0 there is also the concept of an annotated text edit which supports to add an annotation to a text edit. The annotation can add information describing the change to the text edit.
+ ```typescript /** * Additional information that describes document changes. @@ -756,6 +768,7 @@ export interface ChangeAnnotation { Usually clients provide options to group the changes along the annotations they are associated with. To support this in the protocol an edit or resource operation refers to a change annotation using an identifier and not the change annotation literal directly. This allows servers to use the identical annotation across multiple edits or resource operations which then allows clients to group the operations under that change annotation. The actual change annotations together with their identifers are managed by the workspace edit via the new property `changeAnnotations`.
+ ```typescript /** * An identifier referring to a change annotation managed by a workspace @@ -767,6 +780,7 @@ export type ChangeAnnotationIdentifier = string; ```
+ ```typescript /** * A special text edit with an additional change annotation. @@ -817,6 +831,7 @@ export interface TextDocumentEdit { File resource changes allow servers to create, rename and delete files and folders via the client. Note that the names talk about files but the operations are supposed to work on files and folders. This is in line with other naming in the Language Server Protocol (see file watchers which can watch files and folders). The corresponding change literals look as follows:
+ ```typescript /** * Options to create a file. @@ -835,6 +850,7 @@ export interface CreateFileOptions { ```
+ ```typescript /** * Create file operation @@ -865,6 +881,7 @@ export interface CreateFile { ```
+ ```typescript /** * Rename file options @@ -883,6 +900,7 @@ export interface RenameFileOptions { ```
+ ```typescript /** * Rename file operation @@ -918,6 +936,7 @@ export interface RenameFile { ```
+ ```typescript /** * Delete file options @@ -936,6 +955,7 @@ export interface DeleteFileOptions { ```
+ ```typescript /** * Delete file operation @@ -1075,6 +1095,7 @@ export interface WorkspaceEditClientCapabilities { ```
+ ```typescript /** * The kind of resource operations supported by the client. @@ -1101,6 +1122,7 @@ export namespace ResourceOperationKind { ```
+ ```typescript export type FailureHandlingKind = 'abort' | 'transactional' | 'undo' | 'textOnlyTransactional'; @@ -1258,6 +1280,7 @@ interface VersionedTextDocumentIdentifier extends TextDocumentIdentifier { An identifier which optionally denotes a specific version of a text document. This information usually flows from the server to the client.
+ ```typescript interface OptionalVersionedTextDocumentIdentifier extends TextDocumentIdentifier { /** @@ -1337,6 +1360,7 @@ export interface DocumentFilter { A document selector is the combination of one or more document filters.
+ ```typescript export type DocumentSelector = DocumentFilter[]; ``` @@ -1402,6 +1426,7 @@ export type MarkupKind = 'plaintext' | 'markdown'; ```
+ ```typescript /** * A `MarkupContent` literal represents a string value which content is @@ -1445,6 +1470,7 @@ export interface MarkupContent { In addition clients should signal the markdown parser they are using via the client capability `general.markdown` introduced in version 3.16.0 defined as follows:
+ ```typescript /** * Client capabilities specific to the used markdown parser. @@ -1610,6 +1636,7 @@ The corresponding type definition for the parameter property looks like this:
+ ```typescript export interface WorkDoneProgressParams { /** @@ -1651,6 +1678,7 @@ To avoid that clients set up a progress monitor user interface before sending a The corresponding type definition for the server capability looks like this:
+ ```typescript export interface WorkDoneProgressOptions { workDoneProgress?: boolean; @@ -1769,6 +1797,7 @@ _Request_: * params: `InitializeParams` defined as follows:
+ ```typescript interface InitializeParams extends WorkDoneProgressParams { /** @@ -1859,6 +1888,7 @@ Where `ClientCapabilities` and `TextDocumentClientCapabilities` are defined as f `TextDocumentClientCapabilities` define capabilities the editor / tool provides on text documents.
+ ```typescript /** * Text document specific client capabilities. @@ -2021,6 +2051,7 @@ export interface TextDocumentClientCapabilities { Client capabilities got introduced with version 3.0 of the protocol. They therefore only describe capabilities that got introduced in 3.x or later. Capabilities that existed in the 2.x version of the protocol are still mandatory for clients. Clients cannot opt out of providing them. So even if a client omits the `ClientCapabilities.textDocument.synchronization` it is still required that the client provides text document synchronization (e.g. open, changed and close notifications).
+ ```typescript interface ClientCapabilities { /** @@ -2222,6 +2253,7 @@ _Response_: * result: `InitializeResult` defined as follows:
+ ```typescript interface InitializeResult { /** @@ -2250,6 +2282,7 @@ interface InitializeResult { * error.code:
+ ```typescript /** * Known error codes for an `InitializeError`; @@ -2283,6 +2316,7 @@ interface InitializeError { The server can signal the following capabilities:
+ ```typescript interface ServerCapabilities { /** @@ -2621,6 +2655,8 @@ interface ShowMessageParams { Where the type is defined as follows: +
+ ```typescript export namespace MessageType { /** @@ -2679,6 +2715,8 @@ _Response_: * result: the selected `MessageActionItem` \| `null` if none got selected. * error: code and message set in case an exception happens during showing a message. +
+ ```typescript interface ShowMessageRequestParams { /** @@ -2700,6 +2738,8 @@ interface ShowMessageRequestParams { Where the `MessageActionItem` is defined as follows: +
+ ```typescript interface MessageActionItem { /** @@ -2738,6 +2778,8 @@ _Request_: * method: 'window/showDocument' * params: `ShowDocumentParams` defined as follows: +
+ ```typescript /** * Params to show a document. @@ -2779,6 +2821,8 @@ _Response_: * result: `ShowDocumentResult` defined as follows: +
+ ```typescript /** * The result of an show document request. @@ -2802,6 +2846,8 @@ _Notification_: * method: 'window/logMessage' * params: `LogMessageParams` defined as follows: +
+ ```typescript interface LogMessageParams { /** @@ -2877,6 +2923,8 @@ _Request_: Where `RegistrationParams` are defined as follows: +
+ ```typescript /** * General parameters to register for a capability. @@ -2898,7 +2946,11 @@ export interface Registration { */ registerOptions?: any; } +``` +
+ +```typescript export interface RegistrationParams { registrations: Registration[]; } @@ -2943,6 +2995,8 @@ _Request_: Where `UnregistrationParams` are defined as follows: +
+ ```typescript /** * General parameters to unregister a capability. @@ -2959,7 +3013,11 @@ export interface Unregistration { */ method: string; } +``` +
+ +```typescript export interface UnregistrationParams { // This should correctly be named `unregistrations`. However changing this // is a breaking change and needs to wait until we deliver a 4.x version @@ -3003,6 +3061,8 @@ _Server Capability_: * property path (optional): `workspace.workspaceFolders` * property type: `WorkspaceFoldersServerCapabilities` defined as follows: +
+ ```typescript export interface WorkspaceFoldersServerCapabilities { /** @@ -3024,12 +3084,14 @@ export interface WorkspaceFoldersServerCapabilities { ``` _Request_: -* method: 'workspace/workspaceFolders' +* method: `workspace/workspaceFolders` * params: none _Response_: * result: `WorkspaceFolder[] | null` defined as follows: +
+ ```typescript export interface WorkspaceFolder { /** @@ -3062,6 +3124,8 @@ _Notification_: * method: 'workspace/didChangeWorkspaceFolders' * params: `DidChangeWorkspaceFoldersParams` defined as follows: +
+ ```typescript export interface DidChangeWorkspaceFoldersParams { /** @@ -3069,7 +3133,11 @@ export interface DidChangeWorkspaceFoldersParams { */ event: WorkspaceFoldersChangeEvent; } +``` +
+ +```typescript /** * The workspace folder change event. */ @@ -3094,6 +3162,8 @@ _Client Capability_: * property path (optional): `workspace.didChangeConfiguration` * property type: `DidChangeConfigurationClientCapabilities` defined as follows: +
+ ```typescript export interface DidChangeConfigurationClientCapabilities { /** @@ -3107,6 +3177,8 @@ _Notification_: * method: 'workspace/didChangeConfiguration', * params: `DidChangeConfigurationParams` defined as follows: +
+ ```typescript interface DidChangeConfigurationParams { /** @@ -3132,11 +3204,17 @@ _Request_: * method: 'workspace/configuration' * params: `ConfigurationParams` defined as follows +
+ ```typescript export interface ConfigurationParams { items: ConfigurationItem[]; } +``` +
+ +```typescript export interface ConfigurationItem { /** * The scope to get the configuration section for. @@ -3169,6 +3247,8 @@ _Client Capability_: * property path (optional): `workspace.didChangeWatchedFiles` * property type: `DidChangeWatchedFilesClientCapabilities` defined as follows: +
+ ```typescript export interface DidChangeWatchedFilesClientCapabilities { /** @@ -3181,6 +3261,9 @@ export interface DidChangeWatchedFilesClientCapabilities { ``` _Registration Options_: `DidChangeWatchedFilesRegistrationOptions` defined as follows: + +
+ ```typescript /** * Describe options to be used when registering for file system change events. @@ -3191,7 +3274,11 @@ export interface DidChangeWatchedFilesRegistrationOptions { */ watchers: FileSystemWatcher[]; } +``` +
+ +```typescript export interface FileSystemWatcher { /** * The glob pattern to watch. @@ -3217,7 +3304,11 @@ export interface FileSystemWatcher { */ kind?: uinteger; } +``` +
+ +```typescript export namespace WatchKind { /** * Interested in create events. @@ -3240,6 +3331,8 @@ _Notification_: * method: 'workspace/didChangeWatchedFiles' * params: `DidChangeWatchedFilesParams` defined as follows: +
+ ```typescript interface DidChangeWatchedFilesParams { /** @@ -3251,6 +3344,8 @@ interface DidChangeWatchedFilesParams { Where FileEvents are described as follows: +
+ ```typescript /** * An event describing a file change. @@ -3265,7 +3360,11 @@ interface FileEvent { */ type: uinteger; } +``` +
+ +```typescript /** * The file event type. */ @@ -3337,12 +3436,17 @@ _Server Capability_: * property path (optional): `workspaceSymbolProvider` * property type: `boolean | WorkspaceSymbolOptions` where `WorkspaceSymbolOptions` is defined as follows: +
+ ```typescript export interface WorkspaceSymbolOptions extends WorkDoneProgressOptions { } ``` _Registration Options_: `WorkspaceSymbolRegistrationOptions` defined as follows: + +
+ ```typescript export interface WorkspaceSymbolRegistrationOptions extends WorkspaceSymbolOptions { @@ -3353,6 +3457,8 @@ _Request_: * method: 'workspace/symbol' * params: `WorkspaceSymbolParams` defined as follows: +
+ ```typescript /** * The parameters of a Workspace Symbol Request. @@ -3380,6 +3486,8 @@ _Client Capability_: * property path (optional): `workspace.executeCommand` * property type: `ExecuteCommandClientCapabilities` defined as follows: +
+ ```typescript export interface ExecuteCommandClientCapabilities { /** @@ -3393,6 +3501,8 @@ _Server Capability_: * property path (optional): `executeCommandProvider` * property type: `ExecuteCommandOptions` defined as follows: +
+ ```typescript export interface ExecuteCommandOptions extends WorkDoneProgressOptions { /** @@ -3403,6 +3513,9 @@ export interface ExecuteCommandOptions extends WorkDoneProgressOptions { ``` _Registration Options_: `ExecuteCommandRegistrationOptions` defined as follows: + +
+ ```typescript /** * Execute command registration options. @@ -3416,6 +3529,8 @@ _Request:_ * method: 'workspace/executeCommand' * params: `ExecuteCommandParams` defined as follows: +
+ ```typescript export interface ExecuteCommandParams extends WorkDoneProgressParams { @@ -3450,6 +3565,8 @@ _Request_: * method: 'workspace/applyEdit' * params: `ApplyWorkspaceEditParams` defined as follows: +
+ ```typescript export interface ApplyWorkspaceEditParams { /** @@ -3469,6 +3586,8 @@ export interface ApplyWorkspaceEditParams { _Response_: * result: `ApplyWorkspaceEditResponse` defined as follows: +
+ ```typescript export interface ApplyWorkspaceEditResponse { /** @@ -3508,6 +3627,8 @@ _Server Capability_: * property name (optional): `workspace.fileOperations.willCreate` * property type: `FileOperationRegistrationOptions` where `FileOperationRegistrationOptions` is defined as follows: +
+ ```typescript /** * The options to register for file operations. @@ -3520,7 +3641,11 @@ interface FileOperationRegistrationOptions { */ filters: FileOperationFilter[]; } +``` +
+ +```typescript /** * A pattern kind describing if a glob pattern matches a file a folder or * both. @@ -3540,7 +3665,11 @@ export namespace FileOperationPatternKind { } export type FileOperationPatternKind = 'file' | 'folder'; +``` +
+ +```typescript /** * Matching options for the file operation pattern. * @@ -3553,7 +3682,11 @@ export interface FileOperationPatternOptions { */ ignoreCase?: boolean; } +``` +
+ +```typescript /** * A pattern to describe in which file operation requests or notifications * the server is interested in. @@ -3588,7 +3721,11 @@ interface FileOperationPattern { */ options?: FileOperationPatternOptions; } +``` +
+ +```typescript /** * A filter to describe in which file operation requests or notifications * the server is interested in. @@ -3617,6 +3754,8 @@ _Request_: * method: 'workspace/willCreateFiles' * params: `CreateFilesParams` defined as follows: +
+ ```typescript /** * The parameters sent in notifications/requests for user-initiated creation @@ -3631,6 +3770,11 @@ export interface CreateFilesParams { */ files: FileCreate[]; } +``` + +
+ +```typescript /** * Represents information on a file/folder create. * @@ -3691,6 +3835,8 @@ _Request_: * method: 'workspace/willRenameFiles' * params: `RenameFilesParams` defined as follows: +
+ ```typescript /** * The parameters sent in notifications/requests for user-initiated renames @@ -3706,6 +3852,11 @@ export interface RenameFilesParams { */ files: FileRename[]; } +``` + +
+ +```typescript /** * Represents information on a file/folder rename. * @@ -3727,7 +3878,7 @@ export interface FileRename { _Response_: * result:`WorkspaceEdit` \| `null` -* error: code and message set in case an exception happens during the `willRenameFiles` request. +* error: code and message set in case an exception happens during the `workspace/willRenameFiles` request. #### DidRenameFiles Notification (:arrow_right:) @@ -3768,9 +3919,11 @@ The capability indicates that the server is interested in receiving `workspace/w _Registration Options_: none _Request_: -* method: 'workspace/willDeleteFiles' +* method: `workspace/willDeleteFiles` * params: `DeleteFilesParams` defined as follows: +
+ ```typescript /** * The parameters sent in notifications/requests for user-initiated deletes @@ -3785,6 +3938,11 @@ export interface DeleteFilesParams { */ files: FileDelete[]; } +``` + +
+ +```typescript /** * Represents information on a file/folder delete. * @@ -3801,7 +3959,7 @@ export interface FileDelete { _Response_: * result:`WorkspaceEdit` \| `null` -* error: code and message set in case an exception happens during the `willDeleteFiles` request. +* error: code and message set in case an exception happens during the `workspace/willDeleteFiles` request. #### DidDeleteFiles Notification (:arrow_right:) @@ -3837,6 +3995,8 @@ Controls whether text document synchronization supports dynamic registration. * property path (optional): `textDocumentSync` * property type: `TextDocumentSyncKind | TextDocumentSyncOptions`. The below definition of the `TextDocumentSyncOptions` only covers the properties specific to the open, change and close notifications. A complete definition covering all properties can be found [here](#textDocument_didClose): +
+ ```typescript /** * Defines how the host (editor) should sync document changes to the language @@ -3861,7 +4021,11 @@ export namespace TextDocumentSyncKind { */ export const Incremental = 2; } +``` +
+ +```typescript export interface TextDocumentSyncOptions { /** * Open and close notifications are sent to the server. If omitted open @@ -3897,6 +4061,8 @@ _Notification_: * method: 'textDocument/didOpen' * params: `DidOpenTextDocumentParams` defined as follows: +
+ ```typescript interface DidOpenTextDocumentParams { /** @@ -3917,6 +4083,9 @@ _Server Capability_: See general synchronization [server capabilities](#textDocument_synchronization_sc). _Registration Options_: `TextDocumentChangeRegistrationOptions` defined as follows: + +
+ ```typescript /** * Describe options to be used when registering for text document change events. @@ -3932,9 +4101,11 @@ export interface TextDocumentChangeRegistrationOptions ``` _Notification_: -* method: 'textDocument/didChange' +* method: `textDocument/didChange` * params: `DidChangeTextDocumentParams` defined as follows: +
+ ```typescript interface DidChangeTextDocumentParams { /** @@ -3961,7 +4132,11 @@ interface DidChangeTextDocumentParams { */ contentChanges: TextDocumentContentChangeEvent[]; } +``` +
+ +```typescript /** * An event describing a change to a text document. If range and rangeLength are * omitted the new text is considered to be the full content of the document. @@ -4013,6 +4188,8 @@ _Notification_: * method: 'textDocument/willSave' * params: `WillSaveTextDocumentParams` defined as follows: +
+ ```typescript /** * The parameters send in a will save text document notification. @@ -4028,7 +4205,11 @@ export interface WillSaveTextDocumentParams { */ reason: TextDocumentSaveReason; } +``` +
+ +```typescript /** * Represents reasons why a text document is saved. */ @@ -4073,12 +4254,12 @@ The capability indicates that the server is interested in `textDocument/willSave _Registration Options_: `TextDocumentRegistrationOptions` _Request_: -* method: 'textDocument/willSaveWaitUntil' +* method: `textDocument/willSaveWaitUntil` * params: `WillSaveTextDocumentParams` _Response_: * result:[`TextEdit[]`](#textEdit) \| `null` -* error: code and message set in case an exception happens during the `willSaveWaitUntil` request. +* error: code and message set in case an exception happens during the `textDocument/willSaveWaitUntil` request. #### DidSaveTextDocument Notification (:arrow_right:) @@ -4094,6 +4275,8 @@ _Server Capability_: * property name (optional): `textDocumentSync.save` * property type: `boolean | SaveOptions` where `SaveOptions` is defined as follows: +
+ ```typescript export interface SaveOptions { /** @@ -4106,6 +4289,9 @@ export interface SaveOptions { The capability indicates that the server is interested in `textDocument/didSave` notifications. _Registration Options_: `TextDocumentSaveRegistrationOptions` defined as follows: + +
+ ```typescript export interface TextDocumentSaveRegistrationOptions extends TextDocumentRegistrationOptions { @@ -4117,9 +4303,11 @@ export interface TextDocumentSaveRegistrationOptions ``` _Notification_: -* method: 'textDocument/didSave' +* method: `textDocument/didSave` * params: `DidSaveTextDocumentParams` defined as follows: +
+ ```typescript interface DidSaveTextDocumentParams { /** @@ -4148,9 +4336,11 @@ See general synchronization [server capabilities](#textDocument_synchronization_ _Registration Options_: `TextDocumentRegistrationOptions` _Notification_: -* method: 'textDocument/didClose' +* method: `textDocument/didClose` * params: `DidCloseTextDocumentParams` defined as follows: +
+ ```typescript interface DidCloseTextDocumentParams { /** @@ -4162,6 +4352,8 @@ interface DidCloseTextDocumentParams { The final structure of the `TextDocumentSyncClientCapabilities` and the `TextDocumentSyncOptions` server options look like this +
+ ```typescript export interface TextDocumentSyncClientCapabilities { /** @@ -4186,7 +4378,11 @@ export interface TextDocumentSyncClientCapabilities { */ didSave?: boolean; } +``` +
+ +```typescript /** * Defines how the host (editor) should sync document changes to the language * server. @@ -4212,7 +4408,11 @@ export namespace TextDocumentSyncKind { } export type TextDocumentSyncKind = 0 | 1 | 2; +``` +
+ +```typescript export interface TextDocumentSyncOptions { /** * Open and close notifications are sent to the server. If omitted open @@ -4261,6 +4461,8 @@ _Client Capability_: * property name (optional): `textDocument.publishDiagnostics` * property type `PublishDiagnosticsClientCapabilities` defined as follows: +
+ ```typescript export interface PublishDiagnosticsClientCapabilities { /** @@ -4308,9 +4510,11 @@ export interface PublishDiagnosticsClientCapabilities { ``` _Notification_: -* method: 'textDocument/publishDiagnostics' +* method: `textDocument/publishDiagnostics` * params: `PublishDiagnosticsParams` defined as follows: +
+ ```typescript interface PublishDiagnosticsParams { /** @@ -4335,13 +4539,15 @@ interface PublishDiagnosticsParams { #### Completion Request (:leftwards_arrow_with_hook:) -The Completion request is sent from the client to the server to compute completion items at a given cursor position. Completion items are presented in the [IntelliSense](https://code.visualstudio.com/docs/editor/intellisense) user interface. If computing full completion items is expensive, servers can additionally provide a handler for the completion item resolve request ('completionItem/resolve'). This request is sent when a completion item is selected in the user interface. A typical use case is for example: the 'textDocument/completion' request doesn't fill in the `documentation` property for returned completion items since it is expensive to compute. When the item is selected in the user interface then a 'completionItem/resolve' request is sent with the selected completion item as a parameter. The returned completion item should have the documentation property filled in. By default the request can only delay the computation of the `detail` and `documentation` properties. Since 3.16.0 the client +The Completion request is sent from the client to the server to compute completion items at a given cursor position. Completion items are presented in the [IntelliSense](https://code.visualstudio.com/docs/editor/intellisense) user interface. If computing full completion items is expensive, servers can additionally provide a handler for the completion item resolve request ('completionItem/resolve'). This request is sent when a completion item is selected in the user interface. A typical use case is for example: the `textDocument/completion` request doesn't fill in the `documentation` property for returned completion items since it is expensive to compute. When the item is selected in the user interface then a 'completionItem/resolve' request is sent with the selected completion item as a parameter. The returned completion item should have the documentation property filled in. By default the request can only delay the computation of the `detail` and `documentation` properties. Since 3.16.0 the client can signal that it can resolve more properties lazily. This is done using the `completionItem#resolveSupport` client capability which lists all properties that can be filled in during a 'completionItem/resolve' request. All other properties (usually `sortText`, `filterText`, `insertText` and `textEdit`) must be provided in the `textDocument/completion` response and must not be changed during resolve. _Client Capability_: * property name (optional): `textDocument.completion` * property type: `CompletionClientCapabilities` defined as follows: +
+ ```typescript export interface CompletionClientCapabilities { /** @@ -4476,6 +4682,8 @@ _Server Capability_: * property name (optional): `completionProvider` * property type: `CompletionOptions` defined as follows: +
+ ```typescript /** * Completion options. @@ -4534,6 +4742,9 @@ export interface CompletionOptions extends WorkDoneProgressOptions { ``` _Registration Options_: `CompletionRegistrationOptions` options defined as follows: + +
+ ```typescript export interface CompletionRegistrationOptions extends TextDocumentRegistrationOptions, CompletionOptions { @@ -4541,9 +4752,11 @@ export interface CompletionRegistrationOptions ``` _Request_: -* method: 'textDocument/completion' +* method: `textDocument/completion` * params: `CompletionParams` defined as follows: +
+ ```typescript export interface CompletionParams extends TextDocumentPositionParams, WorkDoneProgressParams, PartialResultParams { @@ -4554,7 +4767,11 @@ export interface CompletionParams extends TextDocumentPositionParams, */ context?: CompletionContext; } +``` +
+ +```typescript /** * How a completion was triggered */ @@ -4578,8 +4795,11 @@ export namespace CompletionTriggerKind { export const TriggerForIncompleteCompletions: 3 = 3; } export type CompletionTriggerKind = 1 | 2 | 3; +``` +
+```typescript /** * Contains additional information about the context in which a completion * request is triggered. @@ -4602,6 +4822,8 @@ export interface CompletionContext { _Response_: * result: `CompletionItem[]` \| `CompletionList` \| `null`. If a `CompletionItem[]` is provided it is interpreted to be complete. So it is the same as `{ isIncomplete: false, items }` +
+ ```typescript /** * Represents a collection of [completion items](#CompletionItem) to be @@ -4622,7 +4844,11 @@ export interface CompletionList { */ items: CompletionItem[]; } +``` +
+ +```typescript /** * Defines whether the insert text in a completion item should be interpreted as * plain text or a snippet. @@ -4645,7 +4871,11 @@ export namespace InsertTextFormat { } export type InsertTextFormat = 1 | 2; +``` +
+ +```typescript /** * Completion item tags are extra annotations that tweak the rendering of a * completion item. @@ -4660,7 +4890,11 @@ export namespace CompletionItemTag { } export type CompletionItemTag = 1; +``` +
+ +```typescript /** * A special text edit to provide an insert and a replace operation. * @@ -4682,7 +4916,11 @@ export interface InsertReplaceEdit { */ replace: Range; } +``` +
+ +```typescript /** * How whitespace and indentation is handled during completion * item insertion. @@ -4712,7 +4950,11 @@ export namespace InsertTextMode { } export type InsertTextMode = 1 | 2; +``` +
+ +```typescript /** * Additional details for a completion item label. * @@ -4735,7 +4977,11 @@ export interface CompletionItemLabelDetails { */ type?: string; } +``` +
+ +```typescript export interface CompletionItem { /** @@ -4902,7 +5148,11 @@ export interface CompletionItem { */ data?: any; } +``` +
+ +```typescript /** * The kind of a completion entry. */ @@ -5024,7 +5274,7 @@ text ::= .* The request is sent from the client to the server to resolve additional information for a given completion item. _Request_: -* method: 'completionItem/resolve' +* method: `completionItem/resolve` * params: `CompletionItem` _Response_: @@ -5039,6 +5289,8 @@ _Client Capability_: * property name (optional): `textDocument.hover` * property type: `HoverClientCapabilities` defined as follows: +
+ ```typescript export interface HoverClientCapabilities { /** @@ -5059,12 +5311,17 @@ _Server Capability_: * property name (optional): `hoverProvider` * property type: `boolean | HoverOptions` where `HoverOptions` is defined as follows: +
+ ```typescript export interface HoverOptions extends WorkDoneProgressOptions { } ``` _Registration Options_: `HoverRegistrationOptions` defined as follows: + +
+ ```typescript export interface HoverRegistrationOptions extends TextDocumentRegistrationOptions, HoverOptions { @@ -5072,9 +5329,11 @@ export interface HoverRegistrationOptions ``` _Request_: -* method: 'textDocument/hover' +* method: `textDocument/hover` * params: `HoverParams` defined as follows: +
+ ```typescript export interface HoverParams extends TextDocumentPositionParams, WorkDoneProgressParams { @@ -5084,6 +5343,8 @@ export interface HoverParams extends TextDocumentPositionParams, _Response_: * result: `Hover` \| `null` defined as follows: +
+ ```typescript /** * The result of a hover request. @@ -5104,6 +5365,8 @@ export interface Hover { Where `MarkedString` is defined as follows: +
+ ```typescript /** * MarkedString can be used to render human readable text. It is either a @@ -5134,6 +5397,8 @@ _Client Capability_: * property name (optional): `textDocument.signatureHelp` * property type: `SignatureHelpClientCapabilities` defined as follows: +
+ ```typescript export interface SignatureHelpClientCapabilities { /** @@ -5190,6 +5455,8 @@ _Server Capability_: * property name (optional): `signatureHelpProvider` * property type: `SignatureHelpOptions` defined as follows: +
+ ```typescript export interface SignatureHelpOptions extends WorkDoneProgressOptions { /** @@ -5212,6 +5479,9 @@ export interface SignatureHelpOptions extends WorkDoneProgressOptions { ``` _Registration Options_: `SignatureHelpRegistrationOptions` defined as follows: + +
+ ```typescript export interface SignatureHelpRegistrationOptions extends TextDocumentRegistrationOptions, SignatureHelpOptions { @@ -5219,9 +5489,11 @@ export interface SignatureHelpRegistrationOptions ``` _Request_: -* method: 'textDocument/signatureHelp' +* method: `textDocument/signatureHelp` * params: `SignatureHelpParams` defined as follows: +
+ ```typescript export interface SignatureHelpParams extends TextDocumentPositionParams, WorkDoneProgressParams { @@ -5234,7 +5506,11 @@ export interface SignatureHelpParams extends TextDocumentPositionParams, */ context?: SignatureHelpContext; } +``` +
+ +```typescript /** * How a signature help was triggered. * @@ -5256,7 +5532,11 @@ export namespace SignatureHelpTriggerKind { export const ContentChange: 3 = 3; } export type SignatureHelpTriggerKind = 1 | 2 | 3; +``` +
+ +```typescript /** * Additional information about the context in which a signature help request * was triggered. @@ -5299,6 +5579,8 @@ export interface SignatureHelpContext { _Response_: * result: `SignatureHelp` \| `null` defined as follows: +
+ ```typescript /** * Signature help represents the signature of something @@ -5336,7 +5618,11 @@ export interface SignatureHelp { */ activeParameter?: uinteger; } +``` +
+ +```typescript /** * Represents the signature of something callable. A signature * can have a label, like a function-name, a doc-comment, and @@ -5369,7 +5655,11 @@ export interface SignatureInformation { */ activeParameter?: uinteger; } +``` +
+ +```typescript /** * Represents a parameter of a callable-signature. A parameter can * have a label and a doc-comment. @@ -5412,6 +5702,8 @@ _Client Capability_: * property name (optional): `textDocument.declaration` * property type: `DeclarationClientCapabilities` defined as follows: +
+ ```typescript export interface DeclarationClientCapabilities { /** @@ -5432,12 +5724,17 @@ _Server Capability_: * property name (optional): `declarationProvider` * property type: `boolean | DeclarationOptions | DeclarationRegistrationOptions` where `DeclarationOptions` is defined as follows: +
+ ```typescript export interface DeclarationOptions extends WorkDoneProgressOptions { } ``` _Registration Options_: `DeclarationRegistrationOptions` defined as follows: + +
+ ```typescript export interface DeclarationRegistrationOptions extends DeclarationOptions, TextDocumentRegistrationOptions, StaticRegistrationOptions { @@ -5445,9 +5742,11 @@ export interface DeclarationRegistrationOptions extends DeclarationOptions, ``` _Request_: -* method: 'textDocument/declaration' +* method: `textDocument/declaration` * params: `DeclarationParams` defined as follows: +
+ ```typescript export interface DeclarationParams extends TextDocumentPositionParams, WorkDoneProgressParams, PartialResultParams { @@ -5469,6 +5768,8 @@ _Client Capability_: * property name (optional): `textDocument.definition` * property type: `DefinitionClientCapabilities` defined as follows: +
+ ```typescript export interface DefinitionClientCapabilities { /** @@ -5489,12 +5790,17 @@ _Server Capability_: * property name (optional): `definitionProvider` * property type: `boolean | DefinitionOptions` where `DefinitionOptions` is defined as follows: +
+ ```typescript export interface DefinitionOptions extends WorkDoneProgressOptions { } ``` _Registration Options_: `DefinitionRegistrationOptions` defined as follows: + +
+ ```typescript export interface DefinitionRegistrationOptions extends TextDocumentRegistrationOptions, DefinitionOptions { @@ -5502,9 +5808,11 @@ export interface DefinitionRegistrationOptions extends ``` _Request_: -* method: 'textDocument/definition' +* method: `textDocument/definition` * params: `DefinitionParams` defined as follows: +
+ ```typescript export interface DefinitionParams extends TextDocumentPositionParams, WorkDoneProgressParams, PartialResultParams { @@ -5528,6 +5836,8 @@ _Client Capability_: * property name (optional): `textDocument.typeDefinition` * property type: `TypeDefinitionClientCapabilities` defined as follows: +
+ ```typescript export interface TypeDefinitionClientCapabilities { /** @@ -5550,12 +5860,17 @@ _Server Capability_: * property name (optional): `typeDefinitionProvider` * property type: `boolean | TypeDefinitionOptions | TypeDefinitionRegistrationOptions` where `TypeDefinitionOptions` is defined as follows: +
+ ```typescript export interface TypeDefinitionOptions extends WorkDoneProgressOptions { } ``` _Registration Options_: `TypeDefinitionRegistrationOptions` defined as follows: + +
+ ```typescript export interface TypeDefinitionRegistrationOptions extends TextDocumentRegistrationOptions, TypeDefinitionOptions, @@ -5564,9 +5879,11 @@ export interface TypeDefinitionRegistrationOptions extends ``` _Request_: -* method: 'textDocument/typeDefinition' +* method: `textDocument/typeDefinition` * params: `TypeDefinitionParams` defined as follows: +
+ ```typescript export interface TypeDefinitionParams extends TextDocumentPositionParams, WorkDoneProgressParams, PartialResultParams { @@ -5590,6 +5907,8 @@ _Client Capability_: * property name (optional): `textDocument.implementation` * property type: `ImplementationClientCapabilities` defined as follows: +
+ ```typescript export interface ImplementationClientCapabilities { /** @@ -5612,12 +5931,17 @@ _Server Capability_: * property name (optional): `implementationProvider` * property type: `boolean | ImplementationOptions | ImplementationRegistrationOptions` where `ImplementationOptions` is defined as follows: +
+ ```typescript export interface ImplementationOptions extends WorkDoneProgressOptions { } ``` _Registration Options_: `ImplementationRegistrationOptions` defined as follows: + +
+ ```typescript export interface ImplementationRegistrationOptions extends TextDocumentRegistrationOptions, ImplementationOptions, @@ -5626,9 +5950,11 @@ export interface ImplementationRegistrationOptions extends ``` _Request_: -* method: 'textDocument/implementation' +* method: `textDocument/implementation` * params: `ImplementationParams` defined as follows: +
+ ```typescript export interface ImplementationParams extends TextDocumentPositionParams, WorkDoneProgressParams, PartialResultParams { @@ -5648,6 +5974,8 @@ _Client Capability_: * property name (optional): `textDocument.references` * property type: `ReferenceClientCapabilities` defined as follows: +
+ ```typescript export interface ReferenceClientCapabilities { /** @@ -5661,12 +5989,17 @@ _Server Capability_: * property name (optional): `referencesProvider` * property type: `boolean | ReferenceOptions` where `ReferenceOptions` is defined as follows: +
+ ```typescript export interface ReferenceOptions extends WorkDoneProgressOptions { } ``` _Registration Options_: `ReferenceRegistrationOptions` defined as follows: + +
+ ```typescript export interface ReferenceRegistrationOptions extends TextDocumentRegistrationOptions, ReferenceOptions { @@ -5674,15 +6007,21 @@ export interface ReferenceRegistrationOptions extends ``` _Request_: -* method: 'textDocument/references' +* method: `textDocument/references` * params: `ReferenceParams` defined as follows: +
+ ```typescript export interface ReferenceParams extends TextDocumentPositionParams, WorkDoneProgressParams, PartialResultParams { context: ReferenceContext; } +``` +
+ +```typescript export interface ReferenceContext { /** * Include the declaration of the current symbol. @@ -5706,6 +6045,8 @@ _Client Capability_: * property name (optional): `textDocument.documentHighlight` * property type: `DocumentHighlightClientCapabilities` defined as follows: +
+ ```typescript export interface DocumentHighlightClientCapabilities { /** @@ -5719,12 +6060,17 @@ _Server Capability_: * property name (optional): `documentHighlightProvider` * property type: `boolean | DocumentHighlightOptions` where `DocumentHighlightOptions` is defined as follows: +
+ ```typescript export interface DocumentHighlightOptions extends WorkDoneProgressOptions { } ``` _Registration Options_: `DocumentHighlightRegistrationOptions` defined as follows: + +
+ ```typescript export interface DocumentHighlightRegistrationOptions extends TextDocumentRegistrationOptions, DocumentHighlightOptions { @@ -5732,9 +6078,11 @@ export interface DocumentHighlightRegistrationOptions extends ``` _Request_: -* method: 'textDocument/documentHighlight' +* method: `textDocument/documentHighlight` * params: `DocumentHighlightParams` defined as follows: +
+ ```typescript export interface DocumentHighlightParams extends TextDocumentPositionParams, WorkDoneProgressParams, PartialResultParams { @@ -5744,6 +6092,8 @@ export interface DocumentHighlightParams extends TextDocumentPositionParams, _Response_: * result: `DocumentHighlight[]` \| `null` defined as follows: +
+ ```typescript /** * A document highlight is a range inside a text document which deserves @@ -5762,7 +6112,11 @@ export interface DocumentHighlight { */ kind?: DocumentHighlightKind; } +``` +
+ +```typescript /** * A document highlight kind. */ @@ -5802,6 +6156,8 @@ _Client Capability_: * property name (optional): `textDocument.documentSymbol` * property type: `DocumentSymbolClientCapabilities` defined as follows: +
+ ```typescript export interface DocumentSymbolClientCapabilities { /** @@ -5860,6 +6216,8 @@ _Server Capability_: * property name (optional): `documentSymbolProvider` * property type: `boolean | DocumentSymbolOptions` where `DocumentSymbolOptions` is defined as follows: +
+ ```typescript export interface DocumentSymbolOptions extends WorkDoneProgressOptions { /** @@ -5873,6 +6231,9 @@ export interface DocumentSymbolOptions extends WorkDoneProgressOptions { ``` _Registration Options_: `DocumentSymbolRegistrationOptions` defined as follows: + +
+ ```typescript export interface DocumentSymbolRegistrationOptions extends TextDocumentRegistrationOptions, DocumentSymbolOptions { @@ -5880,9 +6241,11 @@ export interface DocumentSymbolRegistrationOptions extends ``` _Request_: -* method: 'textDocument/documentSymbol' +* method: `textDocument/documentSymbol` * params: `DocumentSymbolParams` defined as follows: +
+ ```typescript export interface DocumentSymbolParams extends WorkDoneProgressParams, PartialResultParams { @@ -5896,6 +6259,8 @@ export interface DocumentSymbolParams extends WorkDoneProgressParams, _Response_: * result: `DocumentSymbol[]` \| `SymbolInformation[]` \| `null` defined as follows: +
+ ```typescript /** * A symbol kind. @@ -5928,7 +6293,11 @@ export namespace SymbolKind { export const Operator = 25; export const TypeParameter = 26; } +``` +
+ +```typescript /** * Symbol tags are extra annotations that tweak the rendering of a symbol. * @@ -5943,8 +6312,11 @@ export namespace SymbolTag { } export type SymbolTag = 1; +``` +
+```typescript /** * Represents programming constructs like variables, classes, interfaces etc. * that appear in a document. Document symbols can be hierarchical and they @@ -6003,7 +6375,11 @@ export interface DocumentSymbol { */ children?: DocumentSymbol[]; } +``` +
+ +```typescript /** * Represents information about programming constructs like variables, classes, * interfaces etc.