import { ReactNode } from 'react'; export type Menu = { route: string; id: string; title: string; icon?: ReactNode; icons?: Array; children?: Array; /** 是否禁用 */ disabled?: boolean; /** 隐藏当前节点 */ isHide?: boolean; /** 隐藏当前节点下的所有子节点 */ isHideChild?: boolean; }; export interface SiderP { /** 菜单(树状结构) */ menuTree: Array; /** 当前收起状态 */ collapsed: boolean; /** 展开-收起时的回调函数,有点击 trigger 以及响应式反馈两种方式可以触发 */ onCollapse: (collapsed: boolean, type?: string) => void; /** 当前选中的菜单项 key 数组 */ selectedKeys: Array; /** 当前展开的 SubMenu 菜单项 key 数组 */ openKeys: Array; /** 被选中时调用 */ onSelect?: ({ item, key, keyPath, selectedKeys, domEvent }: { item: any; key: any; keyPath: any; selectedKeys: any; domEvent: any; }) => void; /** 点击 MenuItem 调用此函数 */ handleClick?: ({ item, key, keyPath, domEvent }: { item: any; key: any; keyPath: any; domEvent: any; }) => void; /** 点击子菜单标题 */ onSubMenu: ({ key, domEvent }: { key: any; domEvent: any; }) => void; /** 类名 */ className?: string; /** 宽度 */ width?: number; /** 收缩宽度 */ collapsedWidth?: number; }