import React from 'react';
export declare const Placements: ["top", "left", "right", "bottom", "topLeft", "topRight", "bottomLeft", "bottomRight", "leftTop", "leftBottom", "rightTop", "rightBottom"];
export declare type PlacementType = typeof Placements[number];
export declare const Triggers: ["hover", "focus", "click", "contextMenu"];
export declare type TriggerType = typeof Triggers[number];
export interface PopperProps {
    gap?: number;
    arrow?: boolean;
    visible?: boolean;
    prefixCls?: string;
    arrowSize?: number;
    disabled?: boolean;
    arrowOffset?: number;
    scrollHidden?: boolean;
    mouseEnterDelay?: number;
    mouseLeaveDelay?: number;
    defaultVisible?: boolean;
    popperClassName?: string;
    placement?: PlacementType;
    locatorClassName?: string;
    popperStyle?: React.CSSProperties;
    trigger?: TriggerType | Array<TriggerType>;
    onTrigger?: (trigger: TriggerType) => void;
    onVisibleChange?: (visible: boolean) => void;
    getTriggerElement?: (locatorNode: HTMLElement) => HTMLElement;
    getPopupContainer?: (locatorNode: HTMLElement) => HTMLElement;
}
declare function usePopper(locatorElement: React.ReactElement, popperElement: React.ReactElement, props: PopperProps): JSX.Element;
export default usePopper;
