import { Widget } from "../../../base/browser/ui/widget.js"; import { IAction } from "../../../base/common/actions.js"; import { Disposable, DisposableStore } from "../../../base/common/lifecycle.js"; import { MenuId } from "../common/actions.js"; import { IMenuService } from "../common/actions.service.js"; import { IContextKeyService } from "../../contextkey/common/contextkey.service.js"; import { IInstantiationService } from "../../instantiation/common/instantiation.js"; export declare class FloatingClickWidget extends Widget { private label; private readonly _onClick; readonly onClick: import("../../../base/common/event.js").Event; private _domNode; constructor(label: string); getDomNode(): HTMLElement; render(): void; } export declare abstract class AbstractFloatingClickMenu extends Disposable { private readonly renderEmitter; protected get onDidRender(): import("../../../base/common/event.js").Event; private readonly menu; constructor(menuId: MenuId, menuService: IMenuService, contextKeyService: IContextKeyService); /** Should be called in implementation constructors after they initialized */ protected render(): void; protected abstract createWidget(action: IAction, disposables: DisposableStore): FloatingClickWidget; protected getActionArg(): unknown; protected isVisible(): boolean; } export declare class FloatingClickMenu extends AbstractFloatingClickMenu { private readonly options; private readonly instantiationService; constructor(options: { /** Element the menu should be rendered into. */ container: HTMLElement; /** Menu to show. If no actions are present, the button is hidden. */ menuId: MenuId; /** Argument provided to the menu action */ getActionArg: () => void; }, instantiationService: IInstantiationService, menuService: IMenuService, contextKeyService: IContextKeyService); protected createWidget(action: IAction, disposable: DisposableStore): FloatingClickWidget; protected getActionArg(): unknown; }