import { InterfaceTypeComposer, ObjectTypeComposer, ObjectTypeComposerArgumentConfigMap } from 'graphql-compose';
import type { HydratedDocument, Model } from 'mongoose';
import type { ExtendedResolveParams } from '../index';
import { FieldsOperatorsConfig } from './filterOperators';
import type { NestedAliasesMap } from './aliases';
export type FilterHelperArgsOpts = {
    onlyIndexed?: boolean;
    removeFields?: string | string[];
    requiredFields?: string | string[];
    operators?: FieldsOperatorsConfig | false;
    isRequired?: boolean;
    baseTypeName?: string;
    prefix?: string;
    suffix?: string;
};
export declare const getFilterHelperArgOptsMap: () => Record<string, string | string[]>;
export declare function filterHelperArgs<TDoc extends HydratedDocument<any> = any>(typeComposer: ObjectTypeComposer<TDoc, any> | InterfaceTypeComposer<TDoc, any>, model: Model<TDoc>, opts?: FilterHelperArgsOpts): ObjectTypeComposerArgumentConfigMap<{
    filter: any;
}>;
export declare function filterHelper(resolveParams: ExtendedResolveParams, aliases?: NestedAliasesMap): void;
//# sourceMappingURL=filter.d.ts.map