import { default as React, HTMLAttributes, LiHTMLAttributes } from 'react';
/**
* @title VerticalMenu.Root
* @zh 除了以下属性, 还支持所有 div 元素的所有属性
* @en In addition to the following attributes, it also supports all attributes of the div element
*/
export interface MenuProps extends HTMLAttributes {
defaultOpenedSubMenuValues?: string[];
defaultSelectedValuePath?: string[];
openedSubMenuValues?: string[];
selectedValuePath?: string[];
onClickSubMenu?: (value: string, finalOpenedSubMenuValues: string[], keyPath: string[], e: React.MouseEvent) => void;
onClickMenuItem?: (value: string, keyPath: string[], e: React.MouseEvent) => void;
/**
* @zh 获取 Menu 容器的 div dom 元素
* @en Get the div dom element of the menu container
*/
ref?: React.RefObject;
}
/**
* @title VerticalMenu.SubMenu
* @zh 除了以下属性, 还支持所有 div 元素的所有属性
* @en In addition to the following attributes, it also supports all attributes of the div element
*/
export interface VerticalSubMenuProps extends HTMLAttributes {
disabled?: boolean;
/**
* @zh 自定义 motion/react 或者 framer-motion 动画,作用在 motion.div 元素上
* @en Customize the animation on the motion.div element of motion/react or framer-motion
*/
customizeDivAnimate?: any;
/**
* @zh 菜单的唯一标识
* @en The unique identifier of the menu
*/
value: string;
/**
* @zh 获取 SubMenu 容器的 div dom 元素
* @en Get the div dom element of the SubMenu container
*/
ref?: React.RefObject;
}
export interface SubMenuListProps extends HTMLAttributes {
/**
* @zh 自定义 motion/react 或者 framer-motion 动画,作用在 motion.div 元素上
* @en Customize the animation on the motion.div element of motion/react or framer-motion
*/
customizeDivAnimate?: any;
ref?: React.RefObject;
}
/**
* @title SubMenuContent
* @zh 除了以下属性, 还支持所有 div 元素的所有属性
* @en In addition to the following attributes, it also supports all attributes of the div element
*/
export interface SubMenuContentProps extends HTMLAttributes {
selectedClassName?: string;
notSelectedClassName?: string;
/**
* @zh 获取 SubMenuContent 容器的 div dom 元素
* @en Get the div dom element of the SubMenuContent container
*/
ref?: React.RefObject;
}
/**
* @title MenuItem
* @zh 除了以下属性, 还支持所有 div 元素的所有属性
* @en In addition to the following attributes, it also supports all attributes of the div element
*/
export interface MenuItemProps extends LiHTMLAttributes {
disabled?: boolean;
value: string;
selectedClassName?: string;
notSelectedClassName?: string;
/**
* @zh 获取 SubMenu 容器的 div dom 元素
* @en Get the div dom element of the SubMenu container
*/
ref?: React.RefObject;
}