import { default as React } from 'react'; import { IconDefinition } from '@fortawesome/free-solid-svg-icons'; import { SlotClassNames, SlotStyles, HtmlProps } from '../types/slots.types.js'; import { FormValidator } from '../../services/formValidation/index.js'; export type IconPickerSlots = 'root' | 'label' | 'itemContainer' | 'item'; export interface IconPickerItem { id: string; label: string; icon?: IconDefinition; customIcon?: React.ReactNode; } export interface IconPickerProps extends Omit { data?: IconPickerItem[]; selectedId?: string | null; label?: string; onChange?: (id: string) => void; formValidator?: FormValidator | null; isRequired?: boolean; className?: string; style?: React.CSSProperties; classNames?: SlotClassNames; styles?: SlotStyles; }