import { ComplexExpression } from "./Expression"; /** * A fluent API operation for creating a filter for a query by chaining different rules. */ export declare class WhereQuery { private parent; private expression; constructor(parent: QueryType, type?: string); /** * Adds an `and` clause to the current condition and returns it for further chaining. */ and(): WhereQuery>; /** * Adds an `or` clause to the current condition and returns it for further chaining. */ or(): WhereQuery>; /** * Adds an `any` clause to the current condition and returns it for further chaining. */ any(): WhereQuery>; /** * Adds a `not` clause to the current condition and returns it for further chaining. */ not(): WhereQuery>; /** * Adds a condition that a field must be equal to a specific value. */ eq(parameter: string, constant: any): WhereQuery; /** * Adds a condition that a field must *not* be equal to a specific value. */ ne(parameter: string, constant: any): WhereQuery; /** * Adds a condition that a field must be `greater than` a certain value. Applicable to Number, String, and Date fields. */ gt(parameter: string, constant: any): WhereQuery; /** * Adds a condition that a field must be `greater than or equal` to a certain value. Applicable to Number, String, and Date fields. */ gte(parameter: string, constant: any): WhereQuery; /** * Adds a condition that a field must be `less than` a certain value. Applicable to Number, String, and Date fields. */ lt(parameter: string, constant: any): WhereQuery; /** * Adds a condition that a field must be `less than or equal` to a certain value. Applicable to Number, String, and Date fields. */ lte(parameter: string, constant: any): WhereQuery; /** * Adds a condition that a field value must *start* with a specified string. */ startsWith(parameter: string, constant: any, caseSensitive?: boolean): WhereQuery; /** * Adds a condition that a field value must *contain* a specified string. */ contains(parameter: string, constant: any, caseSensitive?: boolean): WhereQuery; /** * Adds a condition that a field value must *end* with a specified string. */ endsWith(parameter: string, constant: any, caseSensitive?: boolean): WhereQuery; /** * Adds a condition that specific values should be found in that field e.g. Id in (id1, id2, id3). */ in(parameter: string, constant: any): WhereQuery; /** * Ends the definition of the current WhereQuery. You need to call this method in order to continue with the definition of the parent {@link Query}. All other `WhereQuery` methods return the current instance of `WhereQuery` to allow chaining. */ done(): QueryType; getExpression(): ComplexExpression; private simple; private addComplexExpression; }