UNPKG

@firecms/ui

Version:

Awesome Firebase/Firestore-based headless open-source CMS

44 lines (43 loc) 1.69 kB
import React, { ChangeEvent } from "react"; export type SelectValue = string | number | boolean; export type SelectProps<T extends SelectValue = string> = { open?: boolean; name?: string; fullWidth?: boolean; id?: string; onOpenChange?: (open: boolean) => void; value?: T; className?: string; inputClassName?: string; viewportClassName?: string; onChange?: React.EventHandler<ChangeEvent<HTMLSelectElement>>; onValueChange?: (updatedValue: T) => void; placeholder?: React.ReactNode; renderValue?: (value: T) => React.ReactNode; size?: "smallest" | "small" | "medium" | "large"; label?: React.ReactNode | string; disabled?: boolean; error?: boolean; position?: "item-aligned" | "popper"; endAdornment?: React.ReactNode; inputRef?: React.RefObject<HTMLButtonElement | null>; padding?: boolean; invisible?: boolean; children?: React.ReactNode; dataType?: "string" | "number" | "boolean"; portalContainer?: HTMLElement | null; }; export declare const Select: React.ForwardRefExoticComponent<SelectProps<string> & React.RefAttributes<HTMLDivElement>>; export type SelectItemProps<T extends SelectValue = string> = { value: T; children?: React.ReactNode; disabled?: boolean; className?: string; }; export declare const SelectItem: React.MemoExoticComponent<(<T extends SelectValue = string>({ value, children, disabled, className }: SelectItemProps<T>) => React.JSX.Element)>; export type SelectGroupProps = { label: React.ReactNode; children: React.ReactNode; className?: string; }; export declare const SelectGroup: React.NamedExoticComponent<SelectGroupProps>;