import type { DSPropTypesSchema, ValidationMap } from '@elliemae/ds-props-helpers'; import type { DSComboboxMultiT } from './DSComboboxMultiT.js'; import type { DSComboboxSingleT } from './DSComboboxSingleT.js'; import { type DSCommonComboboxPropsT } from './DSCommonComboboxPropsT.js'; export declare namespace DSComboboxT { type SlotFunctionArguments = { dsComboboxRoot: () => object; dsComboboxInputWrapper: () => object; dsComboboxInput: () => object; dsComboboxDropdownButton: () => object; dsComboboxFastList: () => object; dsComboboxSectionWrapper: () => object; dsComboboxSectionLabel: () => object; dsComboboxSingleMenuItem: () => object; dsComboboxMultiMenuItem: () => object; dsComboboxLoadingIndicator: () => object; dsComboboxSkeletonMenuItem: () => object; dsComboboxPill: () => object; dsComboboxPillGroup: () => object; dsComboboxPopperWrapper: () => object; dsComboboxSelection: () => object; dsComboboxSingleValueWrapper: () => object; dsComboboxHeaderActions: () => object; dsComboboxHeaderActionsSeparator: () => object; dsComboboxInputPlaceholder: () => object; dsComboboxInputFieldWrapper: () => object; dsComboboxListWrapper: () => object; dsComboboxNoResults: () => object; dsComboboxCreatableLabel: () => object; dsComboboxCreatableValue: () => object; dsComboboxMenuItemsWrapper: () => object; dsComboboxLoadingWrapper: () => object; }; type CommonItemOptions = DSCommonComboboxPropsT.CommonItemOptions; type ItemSeparatorOptions = DSCommonComboboxPropsT.ItemSeparatorOptions; type ItemSectionOptions = DSCommonComboboxPropsT.ItemSectionOptions; type ItemOption = DSCommonComboboxPropsT.ItemOption; type ItemCreatableOption = DSCommonComboboxPropsT.ItemCreatableOption; type SelectionableOptions = DSCommonComboboxPropsT.SelectionableOptions; type LayoutOptions = DSCommonComboboxPropsT.LayoutOptions; type OptionTypes = DSCommonComboboxPropsT.OptionTypes; type SelectedOptionsT = SelectionableOptions[] | SelectionableOptions | null; type SingleComboboxRequirePropsRenameInterface = Omit & { selectedValues: DSComboboxSingleT.RequiredProps['selectedValue']; }; type RequiredProps = T extends DSCommonComboboxPropsT.ItemOption[] ? DSComboboxMultiT.RequiredProps : SingleComboboxRequirePropsRenameInterface; type DefaultProps = T extends DSCommonComboboxPropsT.ItemOption[] ? DSComboboxMultiT.DefaultProps : DSComboboxSingleT.DefaultProps; type OptionalProps = T extends DSCommonComboboxPropsT.ItemOption[] ? DSComboboxMultiT.OptionalProps : DSComboboxSingleT.OptionalProps; type PropsOptional = OptionalProps; type Props = T extends DSCommonComboboxPropsT.ItemOption[] ? DSComboboxMultiT.Props : Omit & { selectedValues: DSComboboxSingleT.Props['selectedValue']; }; type InternalProps = T extends DSCommonComboboxPropsT.ItemOption[] ? DSComboboxMultiT.InternalProps : Omit & { selectedValues: DSComboboxSingleT.InternalProps['selectedValue']; }; } export declare const defaultProps: DSComboboxT.DefaultProps; /** * Unified public schema used by polymorphic combobox consumption. * * `selectedValues` shape determines effective usage mode: * - object or null => single-select contract * - array => multi-select contract */ export declare const ComboboxPropTypes: DSPropTypesSchema; export declare const ComboboxPropTypesSchema: ValidationMap;