import * as React from 'react';

export interface SidebarSectionItemProps {
  /** Applied as data-hook HTML attribute that can be used in the tests */
  dataHook?: string;
  /** Specifies a CSS class name to be appended to the component’s root element.
   * @internal
   */
  className?: string;
  children?: React.ReactNode;
  /** An element to appear at the beginning of the text */
  prefix?: React.ReactNode;
  /** An element to appear at the end of the text */
  suffix?: React.ReactNode;
  /** Indicates whether to display the item as selected */
  selected?: boolean;
  /** Indicates whether to display the item as disabled */
  disabled?: boolean;
  /** Indicates whether to display an icon for drilling in on hover */
  drillable?: boolean;
  /** Indicates whether to display a low-opacity icon for drilling even without hover, relevant only when drillable is true */
  alwaysDisplayChevron?: boolean;
  /** A callback to be triggered on click */
  onClick?: React.MouseEventHandler<HTMLButtonElement>;
  /** unique identifier per item, used to mark it for navigation and selection */
  itemKey?: string;
}

export default class SidebarSectionItem extends React.PureComponent<SidebarSectionItemProps> {}
