import { IRequestField } from '../../requests/apiRequests/IRequestArgument';
import { APISchema } from '../../schema/APISchema';
export declare class FilterQueryBuilder {
    constructor();
    buildFilterQuery(query: any, schema: APISchema): {};
    private _buildClassicFilter;
    private _buildAdvancedFilter;
    private _buildAvancedFilterRecursively;
    private _buildAdvancedFilterItem;
    private _getMongoLogicOperator;
    private _filterField;
    private _filterLabelField;
    private parseIncludeExcludeMembers;
    private getMongoGroupMemberFilter;
    private resolveRecursiveFilter;
    private reduceFilterItemRecurcion;
    private _msDay;
    private _filterDateField;
    private adjustDateFormat;
    private isDateIntervalDefined;
}
export interface IFilterMemberObject {
    member: string | number;
    filter?: any;
}
export interface IRecursiveFilterMemberObject {
    field: IRequestField;
    include?: IFilterMemberObject[];
    exclude?: IFilterMemberObject[];
}
