import './SelectDropdown.css'; import { AtomMut } from '@reatom/framework'; import React from 'react'; import { FieldPropSize } from '../../FieldComponents'; import { PopoverPropOffset } from '../../Popover'; import { GetOptionPropsResult, OptionForCreate, OptionProps } from '../useSelect'; import { PropsWithJsxAttributes } from '../../../utils/types/PropsWithJsxAttributes'; import { CountedGroup } from '../types'; export declare const selectDropdownForm: readonly ["default", "brick", "round"]; export type SelectDropdownPropForm = typeof selectDropdownForm[number]; export declare const defaultSelectDropdownPropForm: "default"; type RenderItemProps = { item: ITEM; active: boolean; hovered: boolean; onClick: (e: React.MouseEvent) => void; onMouseEnter: (e: React.MouseEvent) => void; ref: React.Ref; }; type Props = PropsWithJsxAttributes<{ size: FieldPropSize; controlRef: React.MutableRefObject; dropdownRef: React.Ref; getOptionActions(props: OptionProps): GetOptionPropsResult; form: SelectDropdownPropForm; openAtom: AtomMut; offset?: PopoverPropOffset | 'none'; isLoading?: boolean; renderItem: (props: RenderItemProps) => React.ReactNode | null; highlightedIndexAtom: AtomMut; visibleItemsAtom: AtomMut<(OptionForCreate | CountedGroup)[]>; getGroupLabel?: (group: GROUP) => string; labelForCreate?: ((label: string | undefined) => React.ReactNode) | React.ReactNode; labelForNotFound?: string; labelForEmptyItems?: string; notFound?: boolean; hasItemsAtom: AtomMut; itemsRefs: React.RefObject[]; virtualScroll?: boolean; onScrollToBottom?: (length: number) => void; valueAtom: AtomMut; getItemKeyAtom: AtomMut<(item: ITEM) => string | number>; onChangeAll: (e: React.SyntheticEvent, items: ITEM[]) => void; highlightIndex: (index: number) => void; onCreate: (e: React.SyntheticEvent) => void; onChange: (e: React.SyntheticEvent, item: ITEM) => void; inputValueAtom: AtomMut; groupsCounterAtom: AtomMut>; dropdownZIndexAtom: AtomMut; selectAllLabel: string; }>; type SelectDropdownComponent = (props: Props) => React.ReactNode | null; export declare const SelectDropdown: SelectDropdownComponent; export {};