import { PlusRouteRecordRaw, Mutable, IntrinsicAttributes, RenderTypes, RecordType } from 'plus-pro-components/es/types'; import { ScrollbarProps } from 'element-plus'; import { Ref, ComputedRef } from 'vue'; export interface PlusSidebarSelfProps { routes?: PlusRouteRecordRaw[]; collapse?: boolean; defaultActive?: string | ComputedRef | Ref; /** * 自定义 菜单的 menuItem * @param route */ renderMenuItem?: (route: PlusRouteRecordRaw) => RenderTypes; /** * 自定义 菜单的 subMenu * @param route */ renderSubMenuItem?: (route: PlusRouteRecordRaw) => RenderTypes; /** * 自定义 菜单的标题显示 * @param route */ renderTitle?: (route: PlusRouteRecordRaw) => RenderTypes; /** * 可以为菜单增加一个额外内容,在菜单头和菜单之间 * @param route */ renderMenuExtra?: (route: PlusRouteRecordRaw) => RenderTypes; scrollbarProps?: Partial & IntrinsicAttributes>; /** * 菜单的宽度 * @deprecated 0.1.20 */ width?: number | string; } export type PlusSidebarProps = PlusSidebarSelfProps & RecordType; export interface PlusSidebarEmits { (e: 'update:collapse', collapse: boolean): void; (e: 'toggleCollapse', collapse: boolean): void; }