import { ReactElement, MouseEvent, KeyboardEvent, FocusEvent, RefObject } from 'react';
type PopoverTriggerChildrenReturnType = {
    ref: RefObject<HTMLButtonElement>;
    onMouseEnter: (e: MouseEvent) => void;
    onMouseLeave: (e: MouseEvent) => void;
    onClick: (e: MouseEvent) => void;
    onKeyDown: (e: KeyboardEvent) => void;
    onBlur: (e: FocusEvent) => void;
    onFocus: (e: FocusEvent) => void;
    "aria-haspopup": boolean;
    "aria-expanded": boolean;
    "aria-details": HTMLElement["id"];
};
/**
 * Props for the PopoverTrigger component
 */
export type PopoverTriggerProps = {
    /**
     * Render function that receives trigger props and returns a React element
     */
    children: (data: PopoverTriggerChildrenReturnType) => ReactElement;
};
/**
 * PopoverTrigger component for creating custom trigger elements.
 *
 * Features:
 * - Supports custom trigger elements via render prop pattern
 * - Automatic focus management and keyboard interaction
 * - Hover and click event handling
 * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)
 * - Context integration with parent popover
 *
 * @example
 * <Popover.Trigger>
 *   {(props) => (
 *     <button {...props}>
 *       Click to open popover
 *     </button>
 *   )}
 * </Popover.Trigger>
 *
 * @example
 * <Popover.Trigger>
 *   {(props) => (
 *     <div {...props} role="button" tabIndex={0}>
 *       Custom trigger element
 *     </div>
 *   )}
 * </Popover.Trigger>
 */
export declare function PopoverTrigger(props: PopoverTriggerProps): ReactElement<any, string | import('react').JSXElementConstructor<any>> | undefined;
export declare namespace PopoverTrigger {
    var displayName: string;
}
export {};
