import { DisposableGroup } from '@blockeditor/global/utils'; import type { ReactiveController, ReactiveControllerHost } from 'lit'; import type { StyleInfo } from 'lit/directives/style-map.js'; import type { AdvancedPortalOptions } from '../portal.js'; import { whenHover, type WhenHoverOptions } from './when-hover.js'; type OptionsParams = Omit, 'setFloating' | 'dispose'> & { abortController: AbortController; }; type HoverPortalOptions = Omit; type HoverOptions = { /** * Transition style when the portal is shown or hidden. */ transition: { in: StyleInfo; out: StyleInfo; } | null; /** * Set the portal as hover element automatically. * @default true */ setPortalAsFloating: boolean; allowMultiple?: boolean; } & WhenHoverOptions; export declare class HoverController implements ReactiveController { protected _disposables: DisposableGroup; host: ReactiveControllerHost; static globalAbortController?: AbortController; private _abortController?; private _setReference?; private _portal?; private readonly _onHover; private readonly _hoverOptions; get setReference(): (element?: Element | undefined) => void; get portal(): HTMLDivElement | undefined; constructor(host: ReactiveControllerHost, onHover: (options: OptionsParams) => HoverPortalOptions | null, hoverOptions?: Partial); hostConnected(): void; hostDisconnected(): void; } export {}; //# sourceMappingURL=controller.d.ts.map