sussudio
Version:
An unofficial VS Code Internal API
29 lines (28 loc) • 1.31 kB
text/typescript
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { HoverPosition } from "../hover/hoverWidget.mjs";
import { IUpdatableHoverOptions } from "./iconLabelHover.mjs";
import { IMarkdownString } from "../../../common/htmlContent.mjs";
import { IDisposable } from "../../../common/lifecycle.mjs";
export interface IHoverDelegateTarget extends IDisposable {
readonly targetElements: readonly HTMLElement[];
x?: number;
}
export interface IHoverDelegateOptions extends IUpdatableHoverOptions {
content: IMarkdownString | string | HTMLElement;
target: IHoverDelegateTarget | HTMLElement;
hoverPosition?: HoverPosition;
showPointer?: boolean;
skipFadeInAnimation?: boolean;
}
export interface IHoverDelegate {
showHover(options: IHoverDelegateOptions, focus?: boolean): IHoverWidget | undefined;
onDidHideHover?: () => void;
delay: number;
placement?: 'mouse' | 'element';
}
export interface IHoverWidget extends IDisposable {
readonly isDisposed: boolean;
}