import { PopoverOptions } from './popover.types'; /** * Headless popover controller. Unlike a tooltip, the content is interactive * (links, forms, buttons): it toggles on click, manages focus, closes on * outside-click / Escape, and positions with floating-ui. Applies no visual * styles — only ARIA wiring and `data-state`. * * Markup: * ```html *
* *
* A link * *
*
* ``` */ export declare class Popover { private readonly root; private readonly trigger; private readonly content; private readonly placement; private readonly offset; private readonly autoFocus; private readonly trapFocus; private readonly closeOnOutsideClick; private readonly trap; private open; private stopAutoUpdate; private cleanups; constructor(root: HTMLElement, options?: PopoverOptions); private init; private onKeydown; private onOutsidePointer; toggle(): void; openPopover(): void; close(): void; private position; get isOpen(): boolean; /** Subscribe to a DOM event on the root element. Returns an unsubscribe fn. */ on(event: string, handler: (event: E) => void): () => void; destroy(): void; }