/// export interface DropdownProps { /** * 类名 */ className?: string; /** * 下拉内容类名 */ contentClassName?: string; /** * 内容 */ children?: React.ReactNode; /** * 自定义样式 */ style?: React.CSSProperties; /** * 下拉列表宽度 */ width?: React.CSSProperties["width"]; /** * 列表项最大高度 */ maxHeight?: React.CSSProperties["height"]; /** * 下拉项高度 * @default medium */ size?: "small" | "medium" | "large"; /** * 下拉选中项 */ value?: string | number | Array; /** * 下拉操作项 * @default [] */ options?: Array; /** * 菜单触发位置 * @default bottom */ placement?: 'top' | 'left' | 'right' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'left-top' | 'left-bottom' | 'right-top' | 'right-bottom'; /** * 菜单触发方式 * @default click */ trigger?: 'hover' | 'click' | 'context-menu'; /** * 是否可多选 * @default false */ multiple?: boolean; /** * 级联子层级展开方向 * @default right */ cascaderDirection?: 'left' | 'right'; /** * 是否全局禁用 * @default false */ disabled?: boolean; /** * 点击菜单项触发事件 */ onClick?: (value: string | number | Array, event?: React.MouseEvent) => void; /** * 切换下拉操作时触发 */ onTrigger?: (visible: boolean) => void; } export interface DropdownItemProps { /** * 下拉操作项内容 * @default '' */ content?: React.ReactNode; /** * 下拉操作项唯一标识 */ value: string | number; /** * 级联子项宽度 */ width?: React.CSSProperties["width"]; /** * 级联子项最大高度 */ maxHeight?: React.CSSProperties["height"]; /** * 单项是否禁用 * @default false */ disabled?: boolean; /** * 是否显示操作项之后的分隔线 * @default false */ divider?: boolean; /** * 该下拉项上方组标题 */ title?: string; /** * 点击时触发 */ onClick?: (dropdownItem: DropdownOption, event: React.MouseEvent) => void; } export interface DropdownMenuProps { /** * 下拉操作项 * @default [] */ options?: Array; /** * 下拉列表宽度 */ width?: React.CSSProperties["width"]; /** * 级联子项最大高度 */ maxHeight?: React.CSSProperties["height"]; /** * 下拉项高度 * @default medium */ size?: "small" | "medium" | "large"; /** * 级联子层级展开方向 * @default right */ cascaderDirection?: 'left' | 'right'; /** * 是否可多选 * @default false */ multiple?: boolean; /** * 是否可多选 */ selectedValue?: string | number | Array; /** * 点击菜单项触发事件 */ clickItem?: (dropdownItem: DropdownOption, event: React.MouseEvent) => void; } export declare type DropdownOption = { children?: Array; } & DropdownItemProps & Record;