import React, { ReactNode } from 'react';
import { TabsProps } from '@wix/design-system';
import { Filter } from '@wix/bex-core';
export interface TabsFilterProps<V> {
    /**
     * List of tabs.
     * @external
     */
    data: V[];
    /**
     * Defines the selected filter.
     * <br><br>
     * Must be an [arrayFilter](./?path=/story/features-filter-factories--arrayfilter) object.
     * @external
     */
    filter: Filter<V[]>;
    /**
     * Display name of the tab that indicates that all items are included.
     * <br>
     * Changes the value of `filter` to an empty array.
     * @external
     */
    all?: string | null | false;
    /**
     * Renders a counter badge next to the tabs' texts.
     * <br><br>
     * See different examples of this implementation in the **Design** tab.
     * @external
     */
    counterBadge?: (value: V | null | undefined) => ReactNode;
    onChange?: (value: V | null | undefined) => unknown;
    /**
     * Tabs layout type.
     * <br><br>
     * If this prop is omitted, the width depends on the label width. The total width of all the tabs cannot exceed 80% of the toolbar.
     * <br><br>
     * Supported values:<br>
     * - `uniformFull`: Tabs are spread out uniformly.
     * @external
     */
    type?: Extract<TabsProps['type'], 'uniformFull'>;
    placeAllTabLast?: boolean;
}
declare function _TabsFilter<V>(props: TabsFilterProps<V>): React.JSX.Element;
export declare const TabsFilter: typeof _TabsFilter & {
    displayName: string;
};
export {};
//# sourceMappingURL=TabsFilter.d.ts.map