import { SelectOptionBase } from '../utils'; import { BaseOnChangeProps, ExtendedOption, MultiSelectDropdownProps, SelectDropdownGroup, SelectDropdownOptions, SelectDropdownProps, SingleSelectDropdownProps } from './types'; export declare const isMultipleSelectProps: (props: BaseOnChangeProps) => props is MultiSelectDropdownProps; export declare const isSingleSelectProps: (props: BaseOnChangeProps) => props is SingleSelectDropdownProps; export declare const isOptionGroup: (obj: unknown) => obj is SelectDropdownGroup; export declare const isOptionsGrouped: (options: SelectDropdownOptions) => options is SelectDropdownGroup[]; /** * Filters options based on the selected value(s). * Handles both single values and arrays of values, and works with both * flat option arrays and grouped options. * * @param options - The options to filter from * @param value - The value or values to filter by * @param optionsAreGrouped - Whether the options are grouped * @returns Array of matching options */ export declare const filterValueFromOptions: (options: SelectOptionBase[] | SelectDropdownGroup[], value: SelectDropdownProps["value"], optionsAreGrouped: boolean) => ExtendedOption[] | SelectOptionBase[]; /** * Removes a value from the selected options array. * Handles both single values and arrays of values to remove. * * @param selectedOptions - The currently selected options * @param value - The value or values to remove * @returns New array with the specified values removed */ export declare const removeValueFromSelectedOptions: (selectedOptions: ExtendedOption[] | SelectOptionBase[], value: SelectDropdownProps["value"]) => SelectOptionBase[];