• Parameters

    • props: MenuItemOwnProps & Omit<ButtonBaseOwnProps, "classes"> & CommonProps & Omit<Omit<DetailedHTMLProps<LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & {
          ref?: null | ((instance: null | HTMLLIElement) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLLIElement>;
      },
          | "className"
          | "style"
          | "children"
          | "classes"
          | "disableGutters"
          | "sx"
          | "autoFocus"
          | "tabIndex"
          | "disabled"
          | "action"
          | "selected"
          | "centerRipple"
          | "disableRipple"
          | "disableTouchRipple"
          | "focusRipple"
          | "focusVisibleClassName"
          | "LinkComponent"
          | "onFocusVisible"
          | "TouchRippleProps"
          | "touchRippleRef"
          | "dense"
          | "divider"> & {
          component?: ElementType<any, (keyof IntrinsicElements)>;
      }
    • OptionaldeprecatedLegacyContext: any

    Returns ReactNode

Properties

__emotion_styles: any
contextTypes?: ValidationMap<any>

Lets you specify which legacy context is consumed by this component.

defaultProps?: Partial<MenuItemOwnProps & Omit<ButtonBaseOwnProps, "classes"> & CommonProps & Omit<Omit<DetailedHTMLProps<LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & {
    ref?: null | ((instance: null | HTMLLIElement) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLLIElement>;
},
    | "className"
    | "style"
    | "children"
    | "classes"
    | "disableGutters"
    | "sx"
    | "autoFocus"
    | "tabIndex"
    | "disabled"
    | "action"
    | "selected"
    | "centerRipple"
    | "disableRipple"
    | "disableTouchRipple"
    | "focusRipple"
    | "focusVisibleClassName"
    | "LinkComponent"
    | "onFocusVisible"
    | "TouchRippleProps"
    | "touchRippleRef"
    | "dense"
    | "divider"> & {
    component?: ElementType<any, (keyof IntrinsicElements)>;
}>

Used to define default values for the props accepted by the component.

type Props = { name?: string }

const MyComponent: FC<Props> = (props) => {
return <div>{props.name}</div>
}

MyComponent.defaultProps = {
name: 'John Doe'
}
displayName?: string

Used in debugging messages. You might want to set it explicitly if you want to display a different name for debugging purposes.


const MyComponent: FC = () => {
return <div>Hello!</div>
}

MyComponent.displayName = 'MyAwesomeComponent'
propTypes?: WeakValidationMap<MenuItemOwnProps & Omit<ButtonBaseOwnProps, "classes"> & CommonProps & Omit<Omit<DetailedHTMLProps<LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & {
    ref?: null | ((instance: null | HTMLLIElement) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLLIElement>;
},
    | "className"
    | "style"
    | "children"
    | "classes"
    | "disableGutters"
    | "sx"
    | "autoFocus"
    | "tabIndex"
    | "disabled"
    | "action"
    | "selected"
    | "centerRipple"
    | "disableRipple"
    | "disableTouchRipple"
    | "focusRipple"
    | "focusVisibleClassName"
    | "LinkComponent"
    | "onFocusVisible"
    | "TouchRippleProps"
    | "touchRippleRef"
    | "dense"
    | "divider"> & {
    component?: ElementType<any, (keyof IntrinsicElements)>;
}>

Used to declare the types of the props accepted by the component. These types will be checked during rendering and in development only.

We recommend using TypeScript instead of checking prop types at runtime.

Methods

  • Type Parameters

    • C extends ComponentClass<ComponentProps<C>, any>

    Parameters

    • component: C

    Returns StyledComponent<MenuItemOwnProps & Omit<ButtonBaseOwnProps, "classes"> & CommonProps & Omit<Omit<DetailedHTMLProps<LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & {
        ref?: null | ((instance: null | HTMLLIElement) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLLIElement>;
    },
        | "className"
        | "style"
        | "children"
        | "classes"
        | "disableGutters"
        | "sx"
        | "autoFocus"
        | "tabIndex"
        | "disabled"
        | "action"
        | "selected"
        | "centerRipple"
        | "disableRipple"
        | "disableTouchRipple"
        | "focusRipple"
        | "focusVisibleClassName"
        | "LinkComponent"
        | "onFocusVisible"
        | "TouchRippleProps"
        | "touchRippleRef"
        | "dense"
        | "divider"> & {
        component?: ElementType<any, (keyof IntrinsicElements)>;
    } & LibraryManagedAttributes<C, ComponentProps<C>>, {}, {
        ref?: Ref<InstanceType<C>>;
    }>

  • Type Parameters

    • C extends ComponentType<ComponentProps<C>>

    Parameters

    • component: C

    Returns StyledComponent<MenuItemOwnProps & Omit<ButtonBaseOwnProps, "classes"> & CommonProps & Omit<Omit<DetailedHTMLProps<LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & {
        ref?: null | ((instance: null | HTMLLIElement) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLLIElement>;
    },
        | "className"
        | "style"
        | "children"
        | "classes"
        | "disableGutters"
        | "sx"
        | "autoFocus"
        | "tabIndex"
        | "disabled"
        | "action"
        | "selected"
        | "centerRipple"
        | "disableRipple"
        | "disableTouchRipple"
        | "focusRipple"
        | "focusVisibleClassName"
        | "LinkComponent"
        | "onFocusVisible"
        | "TouchRippleProps"
        | "touchRippleRef"
        | "dense"
        | "divider"> & {
        component?: ElementType<any, (keyof IntrinsicElements)>;
    } & LibraryManagedAttributes<C, ComponentProps<C>>, {}, {}>

  • Type Parameters

    • Tag extends keyof IntrinsicElements

    Parameters

    Returns StyledComponent<MenuItemProps, IntrinsicElements[Tag], {}>