UNPKG

@snowball-tech/fractal

Version:

Fractal's (Snowball's design system) React component library based on RadixUI and TailwindCSS

60 lines (59 loc) 1.9 kB
import { AllHTMLAttributes, ReactNode } from "react"; import { SelectContentProps } from "@radix-ui/react-select"; //#region src/components/Select/Select.types.d.ts type CombinedRefs = { container: HTMLDivElement | null; dropdown: HTMLDivElement | null; trigger: HTMLButtonElement | null; }; interface SelectProps extends Omit<AllHTMLAttributes<HTMLSelectElement>, 'label' | 'onSelect'> { autoFocus?: boolean; children?: ReactNode; defaultValue?: string; description?: ReactNode; disabled?: boolean; displayedValue?: ReactNode; dropdown?: Partial<{ className?: string; } & Omit<SelectContentProps, 'asChild'>>; fullWidth?: boolean; id?: string; label?: ReactNode; labelElement?: keyof HTMLElementTagNameMap; name?: string; open?: boolean; placeholder?: string; portalled?: boolean; rainbow?: boolean; readOnly?: boolean; required?: boolean; value?: string; onClose?: () => void; onOpen?: () => void; onSelect?: (newValue: string) => void; } interface SelectEmptyProps extends Omit<AllHTMLAttributes<HTMLDivElement>, 'label'> { children?: ReactNode; label?: ReactNode; labelElement?: keyof HTMLElementTagNameMap; value?: string; } interface SelectItemProps extends Omit<AllHTMLAttributes<HTMLDivElement>, 'label'> { value: string; children?: ReactNode; disabled?: boolean; label?: ReactNode; labelElement?: keyof HTMLElementTagNameMap; rainbow?: boolean; } interface SelectItemGroupProps extends Omit<AllHTMLAttributes<HTMLDivElement>, 'label'> { children: ReactNode; label: ReactNode; disabled?: boolean; labelElement?: keyof HTMLElementTagNameMap; rainbow?: boolean; } type SelectItemSeparatorProps = AllHTMLAttributes<HTMLDivElement>; //#endregion export { CombinedRefs, SelectEmptyProps, SelectItemGroupProps, SelectItemProps, SelectItemSeparatorProps, SelectProps }; //# sourceMappingURL=Select.types.d.ts.map