import { HTMLAttributes } from "react";
import { As, Props } from "ariakit-react-utils/types";
import { DialogOptions } from "../dialog/dialog";
import { PopoverState } from "./popover-state";
/**
* A component hook that returns props that can be passed to `Role` or any other
* Ariakit component to render a popover element.
* @see https://ariakit.org/components/popover
* @example
* ```jsx
* const state = usePopoverState();
* const props = usePopover({ state });
* Popover
* ```
*/
export declare const usePopover: import("ariakit-react-utils/types").Hook>;
/**
* A component that renders a popover element.
* @see https://ariakit.org/components/popover
* @example
* ```jsx
* const popover = usePopoverState();
* Disclosure
* Popover
* ```
*/
export declare const Popover: import("ariakit-react-utils/types").Component>;
export declare type PopoverOptions = Omit, "state"> & {
/**
* Object returned by the `usePopoverState` hook.
*/
state: PopoverState;
/**
* Props that will be passed to the popover wrapper element. This element will
* be used to position the popover.
*/
wrapperProps?: HTMLAttributes;
};
export declare type PopoverProps = Props>;