type Alignement = 'start' | 'end'; type Position = 'left' | 'right' | 'top' | 'bottom'; export type Placement = Position | `${Position}-${Alignement}`; export type PopoverType = ReturnType; export type PopoverOptions = { mode?: 'auto' | 'hint' | 'manual'; placement?: Placement; listenClick?: boolean; listenFocus?: boolean; listenFocusout?: boolean; listenHover?: boolean; /** Only when listenHover={true} */ hideDelay?: number; onShow?: () => void; onHide?: () => void; hotKey?: string; }; export declare function usePopover({ mode, placement, listenClick, listenFocus, listenFocusout, listenHover, hideDelay, onShow, onHide, hotKey }?: PopoverOptions): { show: () => void; hide: () => void; readonly isOpen: boolean; content: { [x: symbol]: (node: HTMLElement) => () => void; popover: "auto" | "hint" | "manual"; }; trigger: { [x: symbol]: (node: HTMLElement) => () => void; }; }; export {};