import type { MenuDividerType as RcMenuDividerType, MenuItemGroupType as RcMenuItemGroupType, MenuItemType as RcMenuItemType, SubMenuType as RcSubMenuType, } from 'rc-menu/lib/interface'; export interface MenuItemType extends RcMenuItemType { danger?: boolean; icon?: React.ReactNode; title?: string; } export interface SubMenuType extends Omit { icon?: React.ReactNode; theme?: 'dark' | 'light'; children: ItemType[]; } export interface MenuItemGroupType extends Omit { children?: ItemType[]; key?: React.Key; } export interface MenuDividerType extends RcMenuDividerType { dashed?: boolean; key?: React.Key; } export type ItemType = | T | SubMenuType | MenuItemGroupType | MenuDividerType | null;