import React, { PropsWithChildren } from 'react';
declare const Placements: ["topLeft", "topCenter", "topRight", "bottomLeft", "bottomCenter", "bottomRight"];
export type Placement = (typeof Placements)[number];
type OverlayFunc = () => React.ReactNode;
interface Align {
    points?: [string, string];
    offset?: [number, number];
    targetOffset?: [number, number];
    overflow?: {
        adjustX?: boolean;
        adjustY?: boolean;
    };
    useCssRight?: boolean;
    useCssBottom?: boolean;
    useCssTransform?: boolean;
}
export interface DropDownProps {
    trigger?: ('click' | 'hover' | 'contextMenu')[];
    overlay: React.ReactNode | OverlayFunc;
    onVisibleChange?: (visible: boolean) => void;
    visible?: boolean;
    disabled?: boolean;
    align?: Align;
    getPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;
    prefixCls?: string;
    className?: string;
    transitionName?: string;
    placement?: Placement;
    overlayClassName?: string;
    overlayStyle?: React.CSSProperties;
    forceRender?: boolean;
    mouseEnterDelay?: number;
    mouseLeaveDelay?: number;
    openClassName?: string;
}
export default class Dropdown extends React.Component<PropsWithChildren<DropDownProps>, any> {
    static defaultProps: {
        mouseEnterDelay: number;
        mouseLeaveDelay: number;
        placement: "topLeft" | "topCenter" | "topRight" | "bottomLeft" | "bottomCenter" | "bottomRight";
    };
    getTransitionName(): string;
    renderOverlay: (prefixCls: string) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    renderDropDown: () => React.JSX.Element;
    render(): React.JSX.Element;
}
export {};
//# sourceMappingURL=dropdown.d.ts.map