1 import { RequestHandler } from 'vscode-jsonrpc';
2 import { Range } from 'vscode-languageserver-types';
3 import { ProtocolRequestType } from './messages';
4 import { StaticRegistrationOptions, TextDocumentPositionParams, TextDocumentRegistrationOptions, WorkDoneProgressOptions, WorkDoneProgressParams } from './protocol';
6 * Client capabilities for the linked editing range request.
10 export interface LinkedEditingRangeClientCapabilities {
12 * Whether implementation supports dynamic registration. If this is set to `true`
13 * the client supports the new `(TextDocumentRegistrationOptions & StaticRegistrationOptions)`
14 * return value for the corresponding server capability as well.
16 dynamicRegistration?: boolean;
18 export interface LinkedEditingRangeParams extends TextDocumentPositionParams, WorkDoneProgressParams {
20 export interface LinkedEditingRangeOptions extends WorkDoneProgressOptions {
22 export interface LinkedEditingRangeRegistrationOptions extends TextDocumentRegistrationOptions, LinkedEditingRangeOptions, StaticRegistrationOptions {
25 * The result of a linked editing range request.
29 export interface LinkedEditingRanges {
31 * A list of ranges that can be edited together. The ranges must have
32 * identical length and contain identical text content. The ranges cannot overlap.
36 * An optional word pattern (regular expression) that describes valid contents for
37 * the given ranges. If no pattern is provided, the client configuration's word
38 * pattern will be used.
43 * A request to provide ranges that can be edited together.
47 export declare namespace LinkedEditingRangeRequest {
48 const method: 'textDocument/linkedEditingRange';
49 const type: ProtocolRequestType<LinkedEditingRangeParams, LinkedEditingRanges | null, void, any, LinkedEditingRangeRegistrationOptions>;
50 type HandlerSignature = RequestHandler<LinkedEditingRangeParams, LinkedEditingRanges | null, void>;