import { TypedEmitter } from '@wix/bex-core/events';
import { CollectionState, Filter, FilterEventOptions, FiltersMap } from '@wix/bex-core';
import { CollectionToolbarFiltersState } from '../CollectionToolbarFilters/CollectionToolbarFiltersState';
export interface CollectionFilterStateParams<T, F extends FiltersMap, V> {
    readonly filter: Filter<V>;
    readonly toolbarFiltersState: CollectionToolbarFiltersState<T, F>;
    readonly location?: 'toolbar' | 'panel' | 'modal';
}
export declare class CollectionFilterState<T, F extends FiltersMap, V> {
    readonly filter: Filter<V>;
    readonly toolbarFiltersState: CollectionToolbarFiltersState<T, F>;
    readonly location: "panel" | "modal" | "toolbar" | undefined;
    readonly events: TypedEmitter<{
        fetch: () => () => unknown;
    }>;
    constructor(params: CollectionFilterStateParams<T, F, V>);
    _reportFilterToggleBiOnNextResult(collection: CollectionState<unknown, {}>, params: FilterEventOptions | undefined): void;
    init(): () => void;
}
//# sourceMappingURL=CollectionFilterState.d.ts.map