import type * as atomIde from "atom-ide-base"; import type { LanguageClientConnection, ServerCapabilities } from "../languageclient"; import type { Point, TextEditor } from "atom"; /** * Public: Determine whether this adapter can be used to adapt a language server based on the serverCapabilities matrix * containing a callHierarchyProvider. * * @param serverCapabilities The {ServerCapabilities} of the language server to consider. * @returns A {Boolean} indicating adapter can adapt the server based on the given serverCapabilities. */ export declare function canAdapt(serverCapabilities: ServerCapabilities): boolean; /** * Public: Obtain the relationship between calling and called functions hierarchically. Corresponds to lsp's * CallHierarchyPrepareRequest. * * @param connection A {LanguageClientConnection} to the language server that provides highlights. * @param editor The Atom {TextEditor} containing the text associated with the calling. * @param position The Atom {Point} associated with the calling. * @param type The hierarchy type either incoming or outgoing. * @returns A {Promise} of an {CallHierarchy}. */ export declare function getCallHierarchy(connection: LanguageClientConnection, editor: TextEditor, point: Point, type: T): Promise>;