import { type ReactNode, type Ref } from 'react';
export interface PopoverInstance {
    show: () => void;
    hide: () => void;
    toggle: () => void;
}
type PopoverChildren = (params: {
    setRef: (ref: HTMLElement | undefined | null) => void;
} & PopoverInstance) => ReactNode;
export interface PopoverProps {
    children: PopoverChildren;
    content: ReactNode | ((instance: PopoverInstance) => ReactNode);
    instanceRef?: Ref<PopoverInstance>;
    preventCloseOnClickOutside?: boolean;
}
export declare function Popover(props: PopoverProps): JSX.Element;
export {};
