import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { IMarkdownString } from "@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent"; import { ITerminalWidget } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/browser/widgets/widgets"; import type { IViewportRange } from "@xterm/xterm"; import { IHoverService } from "@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service"; import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service"; import type { IHoverAction } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/hover/hover"; export interface ILinkHoverTargetOptions { readonly viewportRange: IViewportRange; readonly cellDimensions: { width: number; height: number; }; readonly terminalDimensions: { width: number; height: number; }; readonly modifierDownCallback?: () => void; readonly modifierUpCallback?: () => void; } export declare class TerminalHover extends Disposable implements ITerminalWidget { private readonly _targetOptions; private readonly _text; private readonly _actions; private readonly _linkHandler; private readonly _hoverService; private readonly _configurationService; readonly id = "hover"; constructor(_targetOptions: ILinkHoverTargetOptions, _text: IMarkdownString, _actions: IHoverAction[] | undefined, _linkHandler: (url: string) => unknown, _hoverService: IHoverService, _configurationService: IConfigurationService); attach(container: HTMLElement): void; }