import { IRealtyFilter } from "../intefraces/realty-filter.interface"; import { RealtyFilterOperation } from "../models/realty-filter-operation.model"; /** * Класс для построения объектов фильтрации объявлений */ export declare class RealtyFiltersBuilder { /** * Формирование части запроса ИЛИ. * Параметры метода будут использованы в запросе через оператор ИЛИ. * @param filter Компоненты фильтра * @returns {RealtyFilterLogicalOperation} */ or(filter: IRealtyFilter | IRealtyFilter[]): IRealtyFilter; /** * Формирование части запроса И. * Параметры метода будут использованы в запросе через оператор И. * @param filter Компоненты фильтра * @returns {RealtyFilterLogicalOperation} */ and(filter: IRealtyFilter | IRealtyFilter[]): IRealtyFilter; /** * Проверка на равенство указанного поля с переданным значением * @param field Имя поля * @param value Значение * @returns {RealtyFilterOperation} */ eq(field: string, value: number | string | boolean): IRealtyFilter; /** * Проверка на неравенство указанного поля с переданным значением * @param field Имя поля * @param value Значение * @returns {RealtyFilterOperation} */ ne(field: string, value: number | string | boolean): IRealtyFilter; /** * Проверка что значение указанного поля больше переданного значения * @param field Имя поля * @param value Значение * @returns {RealtyFilterOperation} */ gt(field: string, value: number): IRealtyFilter; /** * Проверка что значение указанного поля больше или равно переданному значению * @param field Имя поля * @param value Значение * @returns {RealtyFilterOperation} */ gte(field: string, value: number): IRealtyFilter; /** * Проверка что значение указанного поля меньше переданного значения * @param field Имя поля * @param value Значение * @returns {RealtyFilterOperation} */ lt(field: string, value: number): IRealtyFilter; /** * Проверка что значение указанного поля меньше или равно переданному значению * @param field Имя поля * @param value Значение * @returns {RealtyFilterOperation} */ lte(field: string, value: number): IRealtyFilter; /** * Проверка что значение указанного поля входит в массив переданных значений * @param field Имя поля * @param value Значение * @returns {RealtyFilterOperation} */ in(field: string, value: number[] | string[] | boolean[]): IRealtyFilter; /** * Проверка что значение указанного поля не входит в массив переданных значений * @param field Имя поля * @param value Значение * @returns {RealtyFilterOperation} */ nin(field: string, value: number[] | string[] | boolean[]): IRealtyFilter; /** * Проверка что значение указанного поля(точки на карте) входит в прямоугольную область описываемую параметрами leftBottomPoint и rightTopPoint * @param field Имя поля * @param leftBottomPoint Координаты левой-нижней точки прямоугольника * @param rightTopPoint Координаты правой-верхней точки прямоугольника * @returns {RealtyFilterOperation} */ geoIn(field: string, leftBottomPoint: [number, number], rightTopPoint: [number, number]): IRealtyFilter; /** * Проверка что значение поля входит в диапазон между minValue и maxValue (включая крайние точки) * @param field Имя поля * @param minValue Минимальное значение * @param maxValue Максимальное значение * @returns {RealtyFilterOperation} */ between(field: string, minValue: number | string, maxValue: number | string): IRealtyFilter; /** * Проверка существования поля * @param field Имя поля * @param value Должно поле существовать или нет * @returns {RealtyFilterOperation} */ exists(field: string, value: boolean): RealtyFilterOperation; }