import { CancellationToken, Hover, MarkupKind } from 'vscode-languageserver'; import { Declaration, VariableDeclaration } from '../analyzer/declaration'; import { TypeEvaluator } from '../analyzer/typeEvaluatorTypes'; import { Type } from '../analyzer/types'; import { SignatureDisplayType } from '../common/configOptions'; import { ProgramView } from '../common/extensibility'; import { ServiceProvider } from '../common/serviceProvider'; import { Position, Range } from '../common/textRange'; import { Uri } from '../common/uri/uri'; import { ExpressionNode, NameNode } from '../parser/parseNodes'; export interface HoverTextPart { python?: boolean; text: string; } export interface HoverResults { parts: HoverTextPart[]; range: Range; } export declare function convertHoverResults(hoverResults: HoverResults | null, format: MarkupKind): Hover | null; export declare function addParameterResultsPart(serviceProvider: ServiceProvider, paramNameNode: NameNode, resolvedDecl: Declaration | undefined, format: MarkupKind, parts: HoverTextPart[]): void; export declare function addDocumentationResultsPart(serviceProvider: ServiceProvider, docString: string | undefined, format: MarkupKind, parts: HoverTextPart[], resolvedDecl: Declaration | undefined): void; export declare function getVariableTypeText(evaluator: TypeEvaluator, declaration: VariableDeclaration | undefined, name: string, type: Type, typeNode: ExpressionNode, functionSignatureDisplay: SignatureDisplayType): string; export declare class HoverProvider { private readonly _program; private readonly _fileUri; private readonly _position; private readonly _format; private readonly _token; private readonly _parseResults; private readonly _sourceMapper; constructor(_program: ProgramView, _fileUri: Uri, _position: Position, _format: MarkupKind, _token: CancellationToken); getHover(): Hover | null; static getPrimaryDeclaration(declarations: Declaration[]): Declaration; private get _evaluator(); private get _functionSignatureDisplay(); private _getHoverResult; private _addResultsForDeclaration; private _addResultsForSynthesizedType; private _tryAddPartsForTypedDictKey; private _addInitOrNewMethodInsteadIfCallNode; private _getType; private _getTypeText; private _addDocumentationPart; private _addDocumentationPartForType; private _addResultsPart; }