import type { CSSProperties, PropType } from 'vue'; import type { MouseEventHandler } from '../_util/EventInterface'; export type Align = { points?: [string, string]; offset?: [number, number]; targetOffset?: [number, number]; overflow?: { adjustX?: boolean; adjustY?: boolean; }; useCssRight?: boolean; useCssBottom?: boolean; useCssTransform?: boolean; }; export type Trigger = 'click' | 'hover' | 'contextmenu'; export type DropdownArrowOptions = { pointAtCenter?: boolean; }; declare const dropdownProps: () => { arrow: { type: PropType; default: boolean | DropdownArrowOptions; }; trigger: { type: PropType; }; menu: { type: PropType; disabled: BooleanConstructor; inlineCollapsed: BooleanConstructor; disabledOverflow: BooleanConstructor; forceSubMenuRender: BooleanConstructor; openKeys: PropType; selectedKeys: PropType; activeKey: StringConstructor; selectable: { type: BooleanConstructor; default: boolean; }; multiple: { type: BooleanConstructor; default: boolean; }; tabindex: { type: (StringConstructor | NumberConstructor)[]; }; motion: PropType; role: StringConstructor; theme: { type: PropType; default: string; }; mode: { type: PropType; default: string; }; inlineIndent: { type: NumberConstructor; default: number; }; subMenuOpenDelay: { type: NumberConstructor; default: number; }; subMenuCloseDelay: { type: NumberConstructor; default: number; }; builtinPlacements: { type: PropType; }; triggerSubMenuAction: { type: PropType; default: string; }; getPopupContainer: PropType<(node: HTMLElement) => HTMLElement>; expandIcon: PropType<(p?: { [key: string]: any; isOpen: boolean; }) => any>; onOpenChange: PropType<(keys: import("../_util/type").Key[]) => void>; onSelect: PropType; onDeselect: PropType; onClick: PropType; onFocus: PropType; onBlur: PropType; onMousedown: PropType; 'onUpdate:openKeys': PropType<(keys: import("../_util/type").Key[]) => void>; 'onUpdate:selectedKeys': PropType<(keys: import("../_util/type").Key[]) => void>; 'onUpdate:activeKey': PropType<(key: import("../_util/type").Key) => void>; }>>>; default: Partial; disabled: BooleanConstructor; inlineCollapsed: BooleanConstructor; disabledOverflow: BooleanConstructor; forceSubMenuRender: BooleanConstructor; openKeys: PropType; selectedKeys: PropType; activeKey: StringConstructor; selectable: { type: BooleanConstructor; default: boolean; }; multiple: { type: BooleanConstructor; default: boolean; }; tabindex: { type: (StringConstructor | NumberConstructor)[]; }; motion: PropType; role: StringConstructor; theme: { type: PropType; default: string; }; mode: { type: PropType; default: string; }; inlineIndent: { type: NumberConstructor; default: number; }; subMenuOpenDelay: { type: NumberConstructor; default: number; }; subMenuCloseDelay: { type: NumberConstructor; default: number; }; builtinPlacements: { type: PropType; }; triggerSubMenuAction: { type: PropType; default: string; }; getPopupContainer: PropType<(node: HTMLElement) => HTMLElement>; expandIcon: PropType<(p?: { [key: string]: any; isOpen: boolean; }) => any>; onOpenChange: PropType<(keys: import("../_util/type").Key[]) => void>; onSelect: PropType; onDeselect: PropType; onClick: PropType; onFocus: PropType; onBlur: PropType; onMousedown: PropType; 'onUpdate:openKeys': PropType<(keys: import("../_util/type").Key[]) => void>; 'onUpdate:selectedKeys': PropType<(keys: import("../_util/type").Key[]) => void>; 'onUpdate:activeKey': PropType<(key: import("../_util/type").Key) => void>; }>>; }; overlay: import("vue-types").VueTypeValidableDef; /** @deprecated Please use `open` instead */ visible: { type: BooleanConstructor; default: boolean; }; open: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; danger: { type: BooleanConstructor; default: boolean; }; autofocus: { type: BooleanConstructor; default: boolean; }; align: { type: PropType; default: Align; }; getPopupContainer: PropType<(triggerNode: HTMLElement) => HTMLElement>; prefixCls: StringConstructor; transitionName: StringConstructor; placement: PropType<"top" | "bottom" | "bottomLeft" | "bottomRight" | "topLeft" | "topRight" | "topCenter" | "bottomCenter">; overlayClassName: StringConstructor; overlayStyle: { type: PropType; default: CSSProperties; }; forceRender: { type: BooleanConstructor; default: boolean; }; mouseEnterDelay: NumberConstructor; mouseLeaveDelay: NumberConstructor; openClassName: StringConstructor; minOverlayWidthMatchTrigger: { type: BooleanConstructor; default: boolean; }; destroyPopupOnHide: { type: BooleanConstructor; default: boolean; }; /** @deprecated Please use `onOpenChange` instead */ onVisibleChange: { type: PropType<(val: boolean) => void>; }; /** @deprecated Please use `onUpdate:open` instead */ 'onUpdate:visible': { type: PropType<(val: boolean) => void>; }; onOpenChange: { type: PropType<(val: boolean) => void>; }; 'onUpdate:open': { type: PropType<(val: boolean) => void>; }; }; declare const dropdownButtonProps: () => { type: PropType; size: PropType<"small" | "large">; htmlType: { type: PropType; default: string; }; href: StringConstructor; disabled: { type: BooleanConstructor; default: boolean; }; prefixCls: StringConstructor; icon: import("vue-types").VueTypeValidableDef; title: StringConstructor; loading: { type: PropType; default: () => boolean | { delay?: number; }; }; onClick: { type: PropType; }; arrow: { type: PropType; default: boolean | DropdownArrowOptions; }; trigger: { type: PropType; }; menu: { type: PropType; disabled: BooleanConstructor; inlineCollapsed: BooleanConstructor; disabledOverflow: BooleanConstructor; forceSubMenuRender: BooleanConstructor; openKeys: PropType; selectedKeys: PropType; activeKey: StringConstructor; selectable: { type: BooleanConstructor; default: boolean; }; multiple: { type: BooleanConstructor; default: boolean; }; tabindex: { type: (StringConstructor | NumberConstructor)[]; }; motion: PropType; role: StringConstructor; theme: { type: PropType; default: string; }; mode: { type: PropType; default: string; }; inlineIndent: { type: NumberConstructor; default: number; }; subMenuOpenDelay: { type: NumberConstructor; default: number; }; subMenuCloseDelay: { type: NumberConstructor; default: number; }; builtinPlacements: { type: PropType; }; triggerSubMenuAction: { type: PropType; default: string; }; getPopupContainer: PropType<(node: HTMLElement) => HTMLElement>; expandIcon: PropType<(p?: { [key: string]: any; isOpen: boolean; }) => any>; onOpenChange: PropType<(keys: import("../_util/type").Key[]) => void>; onSelect: PropType; onDeselect: PropType; onClick: PropType; onFocus: PropType; onBlur: PropType; onMousedown: PropType; 'onUpdate:openKeys': PropType<(keys: import("../_util/type").Key[]) => void>; 'onUpdate:selectedKeys': PropType<(keys: import("../_util/type").Key[]) => void>; 'onUpdate:activeKey': PropType<(key: import("../_util/type").Key) => void>; }>>>; default: Partial; disabled: BooleanConstructor; inlineCollapsed: BooleanConstructor; disabledOverflow: BooleanConstructor; forceSubMenuRender: BooleanConstructor; openKeys: PropType; selectedKeys: PropType; activeKey: StringConstructor; selectable: { type: BooleanConstructor; default: boolean; }; multiple: { type: BooleanConstructor; default: boolean; }; tabindex: { type: (StringConstructor | NumberConstructor)[]; }; motion: PropType; role: StringConstructor; theme: { type: PropType; default: string; }; mode: { type: PropType; default: string; }; inlineIndent: { type: NumberConstructor; default: number; }; subMenuOpenDelay: { type: NumberConstructor; default: number; }; subMenuCloseDelay: { type: NumberConstructor; default: number; }; builtinPlacements: { type: PropType; }; triggerSubMenuAction: { type: PropType; default: string; }; getPopupContainer: PropType<(node: HTMLElement) => HTMLElement>; expandIcon: PropType<(p?: { [key: string]: any; isOpen: boolean; }) => any>; onOpenChange: PropType<(keys: import("../_util/type").Key[]) => void>; onSelect: PropType; onDeselect: PropType; onClick: PropType; onFocus: PropType; onBlur: PropType; onMousedown: PropType; 'onUpdate:openKeys': PropType<(keys: import("../_util/type").Key[]) => void>; 'onUpdate:selectedKeys': PropType<(keys: import("../_util/type").Key[]) => void>; 'onUpdate:activeKey': PropType<(key: import("../_util/type").Key) => void>; }>>; }; overlay: import("vue-types").VueTypeValidableDef; /** @deprecated Please use `open` instead */ visible: { type: BooleanConstructor; default: boolean; }; open: { type: BooleanConstructor; default: boolean; }; danger: { type: BooleanConstructor; default: boolean; }; autofocus: { type: BooleanConstructor; default: boolean; }; align: { type: PropType; default: Align; }; getPopupContainer: PropType<(triggerNode: HTMLElement) => HTMLElement>; transitionName: StringConstructor; placement: PropType<"top" | "bottom" | "bottomLeft" | "bottomRight" | "topLeft" | "topRight" | "topCenter" | "bottomCenter">; overlayClassName: StringConstructor; overlayStyle: { type: PropType; default: CSSProperties; }; forceRender: { type: BooleanConstructor; default: boolean; }; mouseEnterDelay: NumberConstructor; mouseLeaveDelay: NumberConstructor; openClassName: StringConstructor; minOverlayWidthMatchTrigger: { type: BooleanConstructor; default: boolean; }; destroyPopupOnHide: { type: BooleanConstructor; default: boolean; }; /** @deprecated Please use `onOpenChange` instead */ onVisibleChange: { type: PropType<(val: boolean) => void>; }; /** @deprecated Please use `onUpdate:open` instead */ 'onUpdate:visible': { type: PropType<(val: boolean) => void>; }; onOpenChange: { type: PropType<(val: boolean) => void>; }; 'onUpdate:open': { type: PropType<(val: boolean) => void>; }; }; export { dropdownProps, dropdownButtonProps }; export default dropdownProps;