import * as React from "react"; import { ViewProps } from "../../View"; import { type FC, type ReactElement, type ChangeEvent, type SyntheticEvent } from "react"; import { FilterContainerProps, SelectedFilter } from "../../Filter/types"; import { FilterGroupSearchProps } from "./FilterGroupSearch"; type ChildrenType = ReactElement | ReactElement; export interface FilterGroupProps extends ViewProps { allowFilterAddition?: boolean; filterGroupRef?: React.RefObject<{ clearAllFilters: () => void; }>; children: ChildrenType | React.ReactFragment; onAnyFilterChange?: (selectedFilters: Array) => void; onRemoveFilter?: (filterId: string) => void; onClearFilter?: (filterId: string) => void; onClearAllFilters?: () => void; onSearchClear?: (event: SyntheticEvent) => void; onSearchChange?: (event: ChangeEvent) => void; onSearchSubmit?: (search: string, event: SyntheticEvent) => void; } type FilterGroupFC = FC & { Search: FC; }; declare const FilterGroup: FilterGroupFC; export default FilterGroup;