import type { CmsEntryListWhere, CmsModel } from "@webiny/api-headless-cms/types/index.js";
import type { ModelFields } from "../../../../operations/entry/elasticsearch/types.js";
import type { PluginsContainer } from "@webiny/plugins";
import type { OpenSearchBoolQueryConfig } from "@webiny/api-opensearch/types.js";
import type { CmsEntryOpenSearchValueSearchRegistry } from "../../../../features/CmsEntryOpenSearchValueSearch/index.js";
import type { CmsEntryOpenSearchFilterRegistry } from "../../../../features/CmsEntryOpenSearchFilter/index.js";
export interface CreateExecParams {
    model: CmsModel;
    fields: ModelFields;
    plugins: PluginsContainer;
    valueSearchRegistry: CmsEntryOpenSearchValueSearchRegistry.Interface;
    filterRegistry: CmsEntryOpenSearchFilterRegistry.Interface;
}
export interface IExecParams {
    where: CmsEntryListWhere;
    query: OpenSearchBoolQueryConfig;
    isValues?: boolean;
}
export interface CreateExecFilteringResponse {
    (params: IExecParams): void;
}
export declare const createExecFiltering: (params: CreateExecParams) => CreateExecFilteringResponse;
