/// import { Connection } from 'vscode-languageserver'; import { CodeActionParams, DidChangeWatchedFilesParams, DocumentFormattingParams, DocumentLinkParams, DocumentOnTypeFormattingParams, DocumentSymbolParams, FoldingRangeParams, SelectionRangeParams, TextDocumentPositionParams, CodeLensParams, DefinitionParams } from 'vscode-languageserver-protocol'; import { CodeAction, CodeLens, CompletionList, DefinitionLink, DocumentLink, DocumentSymbol, Hover, FoldingRange, SelectionRange, SymbolInformation, TextEdit } from 'vscode-languageserver-types'; import { LanguageService } from '../../languageservice/yamlLanguageService'; import { SettingsState } from '../../yamlSettings'; import { ValidationHandler } from './validationHandlers'; export declare class LanguageHandlers { private readonly connection; private languageService; private yamlSettings; private validationHandler; pendingLimitExceededWarnings: { [uri: string]: { features: { [name: string]: string; }; timeout?: NodeJS.Timeout; }; }; constructor(connection: Connection, languageService: LanguageService, yamlSettings: SettingsState, validationHandler: ValidationHandler); registerHandlers(): void; documentLinkHandler(params: DocumentLinkParams): Promise; /** * Called when the code outline in an editor needs to be populated * Returns a list of symbols that is then shown in the code outline */ documentSymbolHandler(documentSymbolParams: DocumentSymbolParams): DocumentSymbol[] | SymbolInformation[]; /** * Called when the formatter is invoked * Returns the formatted document content using prettier */ formatterHandler(formatParams: DocumentFormattingParams): Promise; formatOnTypeHandler(params: DocumentOnTypeFormattingParams): Promise | TextEdit[] | undefined; /** * Called when the user hovers with their mouse over a keyword * Returns an informational tooltip */ hoverHandler(textDocumentPositionParams: TextDocumentPositionParams): Promise; /** * Called when auto-complete is triggered in an editor * Returns a list of valid completion items */ completionHandler(textDocumentPosition: TextDocumentPositionParams): Promise; /** * Called when a monitored file is changed in an editor * Re-validates the entire document */ watchedFilesHandler(change: DidChangeWatchedFilesParams): void; foldingRangeHandler(params: FoldingRangeParams): Promise | FoldingRange[] | undefined; selectionRangeHandler(params: SelectionRangeParams): SelectionRange[] | undefined; codeActionHandler(params: CodeActionParams): CodeAction[] | undefined; codeLensHandler(params: CodeLensParams): PromiseLike | CodeLens[] | undefined; codeLensResolveHandler(param: CodeLens): PromiseLike | CodeLens; definitionHandler(params: DefinitionParams): DefinitionLink[]; private cancelLimitExceededWarnings; private onResultLimitExceeded; }