import * as react from 'react';
import { HTMLAttributes } from 'react';
import { PlacementAxis } from 'react-aria';
import { ContextValue } from 'react-aria-components';
import { RenderProps } from '../_utils/utils.js';
import 'react/jsx-runtime';
import '@react-types/shared';

interface OverlayArrowContextValue extends OverlayArrowProps {
    placement: PlacementAxis;
}
declare const OverlayArrowContext: react.Context<ContextValue<OverlayArrowContextValue, HTMLDivElement>>;
interface OverlayArrowProps extends Omit<HTMLAttributes<HTMLDivElement>, 'className' | 'style' | 'children'>, RenderProps<OverlayArrowRenderProps> {
}
interface OverlayArrowRenderProps {
    /**
     * The placement of the overlay relative to the trigger.
     * @selector [data-placement="left | right | top | bottom"]
     */
    placement: PlacementAxis;
}
/**
 * An OverlayArrow renders a custom arrow element relative to an overlay element
 * such as a popover or tooltip such that it aligns with a trigger element.
 */
declare const _OverlayArrow: (props: OverlayArrowProps & react.RefAttributes<HTMLDivElement>) => React.ReactElement | null;

export { _OverlayArrow as OverlayArrow, OverlayArrowContext, OverlayArrowProps, OverlayArrowRenderProps };
