import type { CSSProperties, ReactNode, SyntheticEvent } from 'react';
export type NewPopoverOnClose = (event: Event | SyntheticEvent) => void;
export type NewPopoverPlacement = 'auto' | 'auto-start' | 'auto-end' | 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'right' | 'right-start' | 'right-end' | 'left' | 'left-start' | 'left-end';
type NewPopoverVirtualElement = {
    getBoundingClientRect: () => DOMRect;
};
export type NewPopoverAnchorEl = null | NewPopoverVirtualElement | HTMLElement | (() => HTMLElement) | (() => NewPopoverVirtualElement);
export type NewPopoverProps = {
    /**
     * Якорь позиционирования
     */
    anchorEl?: NewPopoverAnchorEl;
    /**
     * Показывать popover. Если не передан — видимость определяется наличием anchorEl.
     */
    isOpen?: boolean;
    /**
     * Позиция относительно anchor
     * @default 'bottom'
     */
    placement?: NewPopoverPlacement;
    /**
     * Контент popover
     */
    children?: ReactNode;
    /**
     * className корневого popper
     */
    className?: string;
    /**
     * style корневого popper
     */
    style?: CSSProperties;
    /**
     * Заголовок для отображения в мобильной версии
     */
    title?: string;
    /**
     * Обработчик закрытия компонента
     */
    onClose?: NewPopoverOnClose;
    /**
     * Рендерить popper внутри родителя, без portal
     * @default false
     */
    disablePortal?: boolean;
    /**
     * Отключить автофокус при открытии popover (десктоп)
     * @default false
     */
    disableAutoFocus?: boolean;
};
export {};
