import React from 'react'; import { ThemeTypesModel } from '../../Themes/theme_types'; import { Color, Kind, Size, stickerOptions } from '../../types'; interface DropdownItemPropType { label: string; value: string; onSelectedItem: () => void; isDisabled?: boolean; counter?: string; } interface DropdownPropsType { dropdownItems: DropdownItemPropType[]; label: string; kind?: Kind; size?: Size; color?: Color.green | Color.blue | Color.dark | Color.danger; width?: 'fixed' | 'full'; theme?: ThemeTypesModel; icon?: string; ariaLabel?: string; className?: string; isDisabled?: boolean; isInverse?: boolean; isColorBg?: boolean; isResponsive?: boolean; stickerOptions?: stickerOptions; selectOptionTemplate?: (optionItem: DropdownItemPropType) => React.ReactElement; onChange?: (item: DropdownItemPropType) => void; } interface ariaTypes { 'aria-selected'?: boolean; 'aria-haspopup'?: string; 'aria-expanded'?: boolean; 'aria-label'?: string; role?: string; } type kindInteraction = 'mouse' | 'keyboard'; interface DropdownWrapperProps { width: 'fixed' | 'full'; } export type { DropdownItemPropType, DropdownPropsType, kindInteraction, ariaTypes, DropdownWrapperProps, };