1 | import * as React from 'react';
|
2 | import { Simplify } from '@mui/types';
|
3 | import { PolymorphicProps, SlotComponentProps } from '../utils';
|
4 | export interface MenuItemRootSlotPropsOverrides {
|
5 | }
|
6 | export type MenuItemOwnerState = Simplify<MenuItemOwnProps & {
|
7 | disabled: boolean;
|
8 | focusVisible: boolean;
|
9 | highlighted: boolean;
|
10 | }>;
|
11 | export interface MenuItemOwnProps {
|
12 | children?: React.ReactNode;
|
13 | className?: string;
|
14 | onClick?: React.MouseEventHandler<HTMLElement>;
|
15 | |
16 |
|
17 |
|
18 |
|
19 | disabled?: boolean;
|
20 | |
21 |
|
22 |
|
23 |
|
24 |
|
25 | slots?: MenuItemSlots;
|
26 | |
27 |
|
28 |
|
29 |
|
30 | slotProps?: {
|
31 | root?: SlotComponentProps<'li', MenuItemRootSlotPropsOverrides, MenuItemOwnerState>;
|
32 | };
|
33 | |
34 |
|
35 |
|
36 |
|
37 | label?: string;
|
38 | }
|
39 | export interface MenuItemSlots {
|
40 | |
41 |
|
42 |
|
43 |
|
44 | root?: React.ElementType;
|
45 | }
|
46 | export interface MenuItemTypeMap<AdditionalProps = {}, RootComponentType extends React.ElementType = 'li'> {
|
47 | props: MenuItemOwnProps & AdditionalProps;
|
48 | defaultComponent: RootComponentType;
|
49 | }
|
50 | export type MenuItemProps<RootComponentType extends React.ElementType = MenuItemTypeMap['defaultComponent']> = PolymorphicProps<MenuItemTypeMap<{}, RootComponentType>, RootComponentType>;
|
51 | export interface MenuItemState {
|
52 | disabled: boolean;
|
53 | highlighted: boolean;
|
54 | }
|