UNPKG

awesome-gcl

Version:
39 lines (38 loc) 1.24 kB
/// <reference types="react" /> import { IconDefinition } from "@fortawesome/free-solid-svg-icons"; import { GSizeEnum } from "../types"; export type SelectComponentsEnum = 'wrapper' | 'label' | 'inputWrapper' | 'input' | 'optionList' | 'optionItem'; export type SelectSizeComponentEnums = 'label' | 'inputWrapper' | 'input' | 'optionList'; export type SelectAdditionalClassesPropTypes = { wrapper?: string[]; label?: string[]; inputWrapper?: string[]; input?: string[]; optionList?: string[]; optionItem?: string[]; }; export type SelectConstructorPropTypes = { additionalClasses?: SelectAdditionalClassesPropTypes; size: GSizeEnum; disabled?: boolean; isOpen: boolean; }; type ItemPropTypes = Record<string, any> & { label: string; }; export type SelectPropTypes = { label?: string; selected?: ItemPropTypes; placeholder?: string; options: ItemPropTypes[]; onChange: (option: ItemPropTypes) => void; icon?: IconDefinition; disabled?: boolean; size: GSizeEnum; additionalClasses?: SelectAdditionalClassesPropTypes; }; export type UseSelectPropTypes = { isVisible: boolean; setIsVisible: React.Dispatch<React.SetStateAction<boolean>>; }; export {};