import { StyledComponentPropsWithRef } from "styled-components"; import { TBadgeProps } from "../Badge"; import Flex, { FlexProps } from "../Flex"; export interface IActiveFacet { name: TFacetName | "all"; value: number | string | undefined; } export interface IFacetsProps extends FlexProps, Omit, "color" | "onChange" | "ref"> { query?: TQueryName; all?: boolean; allLabel?: string; defaultSelection?: TFacetName; names: readonly TFacetName[]; disabledNames?: readonly TFacetName[]; values?: TFacetsValues; getLabel?: (name: TFacetName) => string; getBadgeProps?: (name: TFacetName) => Omit; trackName?: string; trackData?: object; ignoreFilters?: string[]; keepFiltersOnSelect?: boolean; onChange?: (activeFacet: IActiveFacet | undefined) => void; } export type TFacetsValues = Partial>;