import * as framer_motion from 'framer-motion';
import * as _heroui_theme from '@heroui/theme';
import * as React from 'react';
import * as _heroui_system from '@heroui/system';
import * as _react_stately_overlays from '@react-stately/overlays';

declare const PopoverProvider: React.Provider<{
    state: _react_stately_overlays.OverlayTriggerState;
    Component: _heroui_system.As<any>;
    children: React.ReactNode;
    classNames: _heroui_theme.SlotsToClasses<"base" | "content" | "trigger" | "backdrop" | "arrow"> | undefined;
    showArrow: boolean;
    triggerRef: React.RefObject<HTMLElement>;
    placement: "left" | "bottom" | "right" | "top" | "center" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end" | "right-start" | "right-end" | null;
    isNonModal: boolean;
    popoverRef: React.RefObject<HTMLDivElement>;
    portalContainer: Element | undefined;
    isOpen: boolean;
    onClose: () => void;
    disableAnimation: boolean;
    shouldBlockScroll: boolean;
    backdrop: "transparent" | "blur" | "opaque";
    motionProps: Omit<framer_motion.HTMLMotionProps<"div">, "ref"> | undefined;
    getBackdropProps: _heroui_system.PropGetter;
    getPopoverProps: _heroui_system.PropGetter;
    getTriggerProps: _heroui_system.PropGetter;
    getDialogProps: _heroui_system.PropGetter;
    getContentProps: _heroui_system.PropGetter;
}>;
declare const usePopoverContext: () => {
    state: _react_stately_overlays.OverlayTriggerState;
    Component: _heroui_system.As<any>;
    children: React.ReactNode;
    classNames: _heroui_theme.SlotsToClasses<"base" | "content" | "trigger" | "backdrop" | "arrow"> | undefined;
    showArrow: boolean;
    triggerRef: React.RefObject<HTMLElement>;
    placement: "left" | "bottom" | "right" | "top" | "center" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end" | "right-start" | "right-end" | null;
    isNonModal: boolean;
    popoverRef: React.RefObject<HTMLDivElement>;
    portalContainer: Element | undefined;
    isOpen: boolean;
    onClose: () => void;
    disableAnimation: boolean;
    shouldBlockScroll: boolean;
    backdrop: "transparent" | "blur" | "opaque";
    motionProps: Omit<framer_motion.HTMLMotionProps<"div">, "ref"> | undefined;
    getBackdropProps: _heroui_system.PropGetter;
    getPopoverProps: _heroui_system.PropGetter;
    getTriggerProps: _heroui_system.PropGetter;
    getDialogProps: _heroui_system.PropGetter;
    getContentProps: _heroui_system.PropGetter;
};

export { PopoverProvider, usePopoverContext };
