UNPKG

1.34 kBTypeScriptView Raw
1import type * as atomIde from "atom-ide-base";
2import type { LanguageClientConnection, ServerCapabilities } from "../languageclient";
3import type { Point, TextEditor } from "atom";
4/**
5 * Public: Determine whether this adapter can be used to adapt a language server based on the serverCapabilities matrix
6 * containing a callHierarchyProvider.
7 *
8 * @param serverCapabilities The {ServerCapabilities} of the language server to consider.
9 * @returns A {Boolean} indicating adapter can adapt the server based on the given serverCapabilities.
10 */
11export declare function canAdapt(serverCapabilities: ServerCapabilities): boolean;
12/**
13 * Public: Obtain the relationship between calling and called functions hierarchically. Corresponds to lsp's
14 * CallHierarchyPrepareRequest.
15 *
16 * @param connection A {LanguageClientConnection} to the language server that provides highlights.
17 * @param editor The Atom {TextEditor} containing the text associated with the calling.
18 * @param position The Atom {Point} associated with the calling.
19 * @param type The hierarchy type either incoming or outgoing.
20 * @returns A {Promise} of an {CallHierarchy}.
21 */
22export declare function getCallHierarchy<T extends atomIde.CallHierarchyType>(connection: LanguageClientConnection, editor: TextEditor, point: Point, type: T): Promise<atomIde.CallHierarchy<T>>;