import React, { ReactNode } from "react"; import { MarginProps, PaddingProps } from "styled-system"; import { IconType } from "../../../icon"; type AriaCurrent = Pick, "aria-current">["aria-current"]; export type ResponsiveVerticalMenuItemClickEvent = React.MouseEvent | React.KeyboardEvent; interface BaseItemProps extends MarginProps, PaddingProps { /** The content of the menu item. This will render the menu item as a parent menu. */ children?: ReactNode; /** Custom icon to be displayed. Takes precedence over `icon` if both are specified. */ customIcon?: ReactNode; /** External URL or anchor link for standard HTML navigation. Providing this will render the menu item as an anchor link. */ href?: string; /** The Carbon icon to be displayed. Defers to `customIcon` if both are defined. */ icon?: IconType; /** The unique identifier for the menu item. */ id: string; /** The label for the menu item. */ label: React.ReactNode; /** A custom click handler to run when an anchor link is clicked */ onClick?: (event: ResponsiveVerticalMenuItemClickEvent) => void; /** The rel attribute to be used for the underlying tag */ rel?: string; /** The target to use for the menu item. */ target?: string; /** Marks the element as the current item within a navigation context. */ ariaCurrent?: AriaCurrent; } export interface ResponsiveVerticalMenuItemProps extends Omit { /** The unique identifier for the menu item. */ id?: string; } export declare const ResponsiveVerticalMenuItem: ({ children, id, label, ...props }: ResponsiveVerticalMenuItemProps) => React.JSX.Element; export default ResponsiveVerticalMenuItem;