massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-json / node_modules / vscode-languageserver-protocol / lib / common / protocol.implementation.d.ts
1 import { RequestHandler } from 'vscode-jsonrpc';
2 import { Definition, DefinitionLink, Location, LocationLink } from 'vscode-languageserver-types';
3 import { ProtocolRequestType } from './messages';
4 import { TextDocumentRegistrationOptions, StaticRegistrationOptions, TextDocumentPositionParams, PartialResultParams, WorkDoneProgressParams, WorkDoneProgressOptions } from './protocol';
5 /**
6  * @since 3.6.0
7  */
8 export interface ImplementationClientCapabilities {
9     /**
10      * Whether implementation supports dynamic registration. If this is set to `true`
11      * the client supports the new `ImplementationRegistrationOptions` return value
12      * for the corresponding server capability as well.
13      */
14     dynamicRegistration?: boolean;
15     /**
16      * The client supports additional metadata in the form of definition links.
17      *
18      * @since 3.14.0
19      */
20     linkSupport?: boolean;
21 }
22 export interface ImplementationOptions extends WorkDoneProgressOptions {
23 }
24 export interface ImplementationRegistrationOptions extends TextDocumentRegistrationOptions, ImplementationOptions, StaticRegistrationOptions {
25 }
26 export interface ImplementationParams extends TextDocumentPositionParams, WorkDoneProgressParams, PartialResultParams {
27 }
28 /**
29  * A request to resolve the implementation locations of a symbol at a given text
30  * document position. The request's parameter is of type [TextDocumentPositioParams]
31  * (#TextDocumentPositionParams) the response is of type [Definition](#Definition) or a
32  * Thenable that resolves to such.
33  */
34 export declare namespace ImplementationRequest {
35     const method: 'textDocument/implementation';
36     const type: ProtocolRequestType<ImplementationParams, Location | Location[] | LocationLink[] | null, Location[] | LocationLink[], void, ImplementationRegistrationOptions>;
37     type HandlerSignature = RequestHandler<ImplementationParams, Definition | DefinitionLink[] | null, void>;
38 }