import React from 'react';
interface PopoverContext {
    popoverId?: string;
    isOpen: boolean;
    toggle: () => void;
    open: () => void;
    close: () => void;
    triggerRef: React.RefObject<HTMLElement>;
    popoverRef: React.RefObject<HTMLElement>;
}
export interface PopoverProps {
    /**
     * Whether the popover should be initially open
     */
    isOpen?: boolean;
    /**
     * The id of the popover. Helps setting up aria controls between popover content & trigger
     */
    id?: string;
    /**
     * @ignore
     */
    children: React.ReactNode | ((renderProps: Pick<PopoverContext, 'isOpen' | 'open' | 'close' | 'toggle'>) => React.ReactNode);
}
declare const PopoverContext: React.Context<PopoverContext>;
declare const usePopoverContext: () => PopoverContext;
declare const Popover: React.FC<PopoverProps>;
export { usePopoverContext };
export default Popover;
