ant-design/components/menu/interface.ts
二货爱吃白萝卜 b62b81958b
test: Fix React 18.3 findDOMNode warning (#48958)
* fix: try to fix React 18.3 warning

* chore: back of ci

* chore: fix type

* chore: fix lint

* chore: update deps

* fix: component error

* test: update snapshot

* test: update snapshot

* test: update snapshot

* test: update snapshot

* test: update snapshot

* chore: update deps

* test: update snapshot

* test: update snapshot

* test: update snapshot

* chore: update deps

* test: update snapshot

* test: update snapshot

* test: update snapshot

* chore: bump version
2024-05-18 15:07:26 +08:00

38 lines
934 B
TypeScript

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<T extends MenuItemType = MenuItemType>
extends Omit<RcSubMenuType, 'children'> {
icon?: React.ReactNode;
theme?: 'dark' | 'light';
children: ItemType<T>[];
}
export interface MenuItemGroupType<T extends MenuItemType = MenuItemType>
extends Omit<RcMenuItemGroupType, 'children'> {
children?: ItemType<T>[];
key?: React.Key;
}
export interface MenuDividerType extends RcMenuDividerType {
dashed?: boolean;
key?: React.Key;
}
export type ItemType<T extends MenuItemType = MenuItemType> =
| T
| SubMenuType<T>
| MenuItemGroupType<T>
| MenuDividerType
| null;