import { ElasticsearchBodyModifierPlugin, ModifyBodyCallable, ModifyBodyParams as BaseModifyBodyParams } from "@webiny/api-elasticsearch";
import { CmsModel } from "@webiny/api-headless-cms/types";
export interface ModifyBodyParams extends BaseModifyBodyParams {
    model: CmsModel;
    where: {
        [key: string]: any;
    };
}
export interface CmsEntryElasticsearchBodyModifierPluginConfig {
    modifyBody: ModifyBodyCallable<ModifyBodyParams>;
    /**
     * If modelId is not passed, there is no filtering of plugins by it when plugin is applied during the runtime.
     */
    modelId?: string;
}
export declare class CmsEntryElasticsearchBodyModifierPlugin extends ElasticsearchBodyModifierPlugin<ModifyBodyParams> {
    static readonly type: string;
    readonly modelId?: string;
    constructor(config: CmsEntryElasticsearchBodyModifierPluginConfig);
}
export declare const createCmsEntryElasticsearchBodyModifierPlugin: (config: CmsEntryElasticsearchBodyModifierPluginConfig) => CmsEntryElasticsearchBodyModifierPlugin;
