export interface DropDownListProps {
  dataTestId?: string;
  accessKey?: string;
  adaptive?: boolean;
  adaptiveTitle?: string;
  ariaDescribedBy?: string;
  ariaLabel?: string;
  ariaLabelledBy?: string;
  className?: string;
  data?: any[];
  dataItemKey?: string;
  defaultItem?: any;
  defaultValue?: any;
  delay?: number;
  dir?: string;
  disabled?: boolean;
  fillMode?: null | "flat" | "outline" | "solid";
  filter?: string;
  filterable?: boolean;
  footer?: React.ReactNode;
  groupField?: string;
  header?: React.ReactNode;
  iconClassName?: string;
  id?: string;
  ignoreCase?: boolean;
  label?: string;
  leftRightKeysNavigation?: boolean;
  loading?: boolean;
  name?: string;
  opened?: boolean;
  popupSettings?: any;
  required?: boolean;
  rounded?: null | "small" | "medium" | "full" | "large";
  size?: null | "small" | "medium" | "large";
  skipDisabledItems?: boolean;
  style?: React.CSSProperties;
  svgIcon?: any;
  tabIndex?: number;
  textField?: string;
  title?: string;
  valid?: boolean;
  validationMessage?: string;
  validityStyles?: boolean;
  value?: any;
  virtual?: any;
  focusedItemIndex?: (
    data: any,
    inputText: string,
    textField?: string
  ) => number;
  groupHeaderItemRender?: (
    li: React.ReactElement,
    itemProps: any
  ) => React.ReactNode;
  groupStickyHeaderItemRender?: (
    div: React.ReactElement,
    stickyHeaderProps: any
  ) => React.ReactNode;
  itemRender?: (li: React.ReactElement, itemProps: any) => React.ReactNode;
  listNoDataRender?: (element: React.ReactElement) => React.ReactNode;
  onBlur?: (event: any) => void;
  onChange?: (event: any) => void;
  onClose?: (event: any) => void;
  onFilterChange?: (event: any) => void;
  onFocus?: (event: any) => void;
  onOpen?: (event: any) => void;
  onPageChange?: (event: any) => void;
  valueMap?: (value: any) => any;
  valueRender?: (element: React.ReactElement, value: any) => React.ReactNode;
}
