import { IDisposable } from "../../../base/common/lifecycle.js"; import { Event } from "../../../base/common/event.js"; import { IKeybindingService } from "../../keybinding/common/keybinding.service.js"; import { IConfigurationService } from "../../configuration/common/configuration.service.js"; import { Widget } from "../../../base/browser/ui/widget.js"; import { AnchorPosition } from "../../../base/browser/ui/contextview/contextview.js"; import { IMarkdownRendererService } from "../../markdown/browser/markdownRenderer.service.js"; import { IAccessibilityService } from "../../accessibility/common/accessibility.service.js"; import { type IHoverOptions, type IHoverWidget } from "../../../base/browser/ui/hover/hover.js"; export declare class HoverWidget extends Widget implements IHoverWidget { private readonly _keybindingService; private readonly _configurationService; private readonly _markdownRenderer; private readonly _accessibilityService; private readonly _messageListeners; private readonly _lockMouseTracker; private readonly _hover; private readonly _hoverPointer; private readonly _hoverContainer; private readonly _target; private readonly _linkHandler; private _isDisposed; private _hoverPosition; private _forcePosition; private _x; private _y; private _isLocked; private _enableFocusTraps; private _addedFocusTrap; private _maxHeightRatioRelativeToWindow; private get _targetWindow(); private get _targetDocumentElement(); get isDisposed(): boolean; get isMouseIn(): boolean; get domNode(): HTMLElement; private readonly _onDispose; get onDispose(): Event; private readonly _onRequestLayout; get onRequestLayout(): Event; get anchor(): AnchorPosition; get x(): number; get y(): number; /** * Whether the hover is "locked" by holding the alt/option key. When locked, the hover will not * hide and can be hovered regardless of whether the `hideOnHover` hover option is set. */ get isLocked(): boolean; set isLocked(value: boolean); /** * Adds an element to be tracked by this hover's mouse tracker. Mouse events on * this element will be considered as being "inside" the hover, preventing it * from closing. This is used for nested hovers where the child hover's container * should be treated as part of the parent hover. */ addMouseTrackingElement(element: HTMLElement): IDisposable; constructor(options: IHoverOptions, _keybindingService: IKeybindingService, _configurationService: IConfigurationService, _markdownRenderer: IMarkdownRendererService, _accessibilityService: IAccessibilityService); private addFocusTrap; private findLastFocusableChild; render(container: HTMLElement): void; layout(): void; private computeXCordinate; private computeYCordinate; private adjustHorizontalHoverPosition; private adjustVerticalHoverPosition; private adjustHoverMaxHeight; private setHoverPointerPosition; focus(): void; hide(): void; dispose(): void; }