massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-json / node_modules / vscode-languageserver-protocol / lib / common / protocol.configuration.d.ts
1 import { RequestHandler, HandlerResult, CancellationToken } from 'vscode-jsonrpc';
2 import { ProtocolRequestType } from './messages';
3 import { PartialResultParams } from './protocol';
4 export interface ConfigurationClientCapabilities {
5     /**
6      * The workspace client capabilities
7      */
8     workspace?: {
9         /**
10          * The client supports `workspace/configuration` requests.
11          *
12          * @since 3.6.0
13          */
14         configuration?: boolean;
15     };
16 }
17 /**
18  * The 'workspace/configuration' request is sent from the server to the client to fetch a certain
19  * configuration setting.
20  *
21  * This pull model replaces the old push model were the client signaled configuration change via an
22  * event. If the server still needs to react to configuration changes (since the server caches the
23  * result of `workspace/configuration` requests) the server should register for an empty configuration
24  * change event and empty the cache if such an event is received.
25  */
26 export declare namespace ConfigurationRequest {
27     const type: ProtocolRequestType<ConfigurationParams & PartialResultParams, any[], never, void, void>;
28     type HandlerSignature = RequestHandler<ConfigurationParams, any[], void>;
29     type MiddlewareSignature = (params: ConfigurationParams, token: CancellationToken, next: HandlerSignature) => HandlerResult<any[], void>;
30 }
31 export interface ConfigurationItem {
32     /**
33      * The scope to get the configuration section for.
34      */
35     scopeUri?: string;
36     /**
37      * The configuration section asked for.
38      */
39     section?: string;
40 }
41 /**
42  * The parameters of a configuration request.
43  */
44 export interface ConfigurationParams {
45     items: ConfigurationItem[];
46 }