import { ReactNode } from "react"; import { SingleValue, MultiValue } from "react-select"; export type DropdownValueOptions = SingleValue | MultiValue; export interface IDropdownOption { id: string; value: string; label: string; supportingText?: string; leftIcon?: ReactNode; rightIcon?: ReactNode; caption?: string; onSelect?: (value?: IDropdownOption) => void; } export interface IDropdownOptionProps { option: IDropdownOption; variant: TDropdownVariant; isFocused?: boolean; isSelected?: boolean; onSelect?: (value?: IDropdownOption) => void; id?: string; } export type TDropdownVariant = "default" | "person" | "toggle" | "checkbox-left" | "checkbox-right"; type DropdownErrorType = "label" | "supportingText" | "errorMessage"; export interface IDropdownErrorProps { message?: string; type: DropdownErrorType; } export interface IDropdownOptionLabelProps extends Pick { isPersonVariant?: boolean; } export {};