import { MultiSelectAllChangeEvent, MultiSelectFilterEvent } from "primevue/multiselect"; import { VirtualScrollerProps } from "primevue/virtualscroller"; export type RevInputMultiSelectOption = Record; export type RevInputMultiSelectOptionMix = string | number | null | undefined | RevInputMultiSelectOption; export type RevInputMultiSelectModel = string[] | number[] | null[] | RevInputMultiSelectOption[] | undefined; export type RevInputMultiSelectDisplayType = "comma" | "chip" | undefined; export type RevInputMultiSelectAllChangeEvent = MultiSelectAllChangeEvent; export type RevInputMultiSelectFilterEvent = MultiSelectFilterEvent; export type RevVirtualScrollerProps = VirtualScrollerProps; export interface RevInputMultiSelectProps { modelValue?: RevInputMultiSelectModel; options?: T[] | string[] | number[] | RevInputMultiSelectOptionMix[]; optionLabel?: string; optionValue?: string; placeholder?: string; display?: RevInputMultiSelectDisplayType; virtualScrollOptions?: RevVirtualScrollerProps; inputClass?: string; isInvalid?: boolean; isNotRoundedFull?: boolean; isNotRoundedLeft?: boolean; isNotRoundedRight?: boolean; maxSelectedLabels?: number; optionGroupLabel?: string; filter?: boolean; loading?: boolean; disabled?: boolean; filterPlaceholder?: string; itemSize?: number; id?: string; selectedItemsLabel?: string; selectionLimit?: number; showToggleAll?: boolean; emptyMessage?: string; selectionMessage?: string; resetFilterOnHide?: boolean; selectAll?: boolean; }