UNPKG

1.38 kBTypeScriptView Raw
1import * as React from 'react';
2import DropdownButton from './dropdown-button';
3declare const Placements: ["topLeft", "topCenter", "topRight", "bottomLeft", "bottomCenter", "bottomRight"];
4declare type Placement = typeof Placements[number];
5declare type OverlayFunc = () => React.ReactElement;
6declare type Align = {
7 points?: [string, string];
8 offset?: [number, number];
9 targetOffset?: [number, number];
10 overflow?: {
11 adjustX?: boolean;
12 adjustY?: boolean;
13 };
14 useCssRight?: boolean;
15 useCssBottom?: boolean;
16 useCssTransform?: boolean;
17};
18export interface DropDownProps {
19 arrow?: boolean;
20 trigger?: ('click' | 'hover' | 'contextMenu')[];
21 overlay: React.ReactElement | OverlayFunc;
22 onVisibleChange?: (visible: boolean) => void;
23 visible?: boolean;
24 disabled?: boolean;
25 align?: Align;
26 getPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;
27 prefixCls?: string;
28 className?: string;
29 transitionName?: string;
30 placement?: Placement;
31 overlayClassName?: string;
32 overlayStyle?: React.CSSProperties;
33 forceRender?: boolean;
34 mouseEnterDelay?: number;
35 mouseLeaveDelay?: number;
36 openClassName?: string;
37}
38interface DropdownInterface extends React.FC<DropDownProps> {
39 Button: typeof DropdownButton;
40}
41declare const Dropdown: DropdownInterface;
42export default Dropdown;