lakutata
Version:
An IoC-based universal application framework.
127 lines (106 loc) • 3.88 kB
TypeScript
import { FindOperator, EqualOperator } from './TypeDef.internal.74.js';
import { ObjectLiteral } from './TypeDef.internal.36.js';
declare function And<T>(...values: FindOperator<T>[]): FindOperator<T>;
declare function Or<T>(...values: FindOperator<T>[]): FindOperator<T>;
/**
* Find Options Operator.
* Example: { someField: Any([...]) }
*/
declare function Any<T>(value: readonly T[] | FindOperator<T>): FindOperator<T>;
/**
* FindOptions Operator.
* Example: { someField: ArrayContainedBy([...]) }
*/
declare function ArrayContainedBy<T>(value: readonly T[] | FindOperator<T>): FindOperator<any>;
/**
* FindOptions Operator.
* Example: { someField: ArrayContains([...]) }
*/
declare function ArrayContains<T>(value: readonly T[] | FindOperator<T>): FindOperator<any>;
/**
* FindOptions Operator.
* Example: { someField: ArrayOverlap([...]) }
*/
declare function ArrayOverlap<T>(value: readonly T[] | FindOperator<T>): FindOperator<any>;
/**
* Find Options Operator.
* Example: { someField: Between(x, y) }
*/
declare function Between<T>(from: T | FindOperator<T>, to: T | FindOperator<T>): FindOperator<T>;
/**
* Find Options Operator.
* This operator is handy to provide object value for non-relational properties of the Entity.
*
* Examples:
* { someField: Equal("value") }
* { uuid: Equal(new UUID()) }
*/
declare function Equal<T>(value: T | FindOperator<T>): EqualOperator<T>;
/**
* Find Options Operator.
* Example: { someField: In([...]) }
*/
declare function In<T>(value: readonly T[] | FindOperator<T>): FindOperator<any>;
/**
* Find Options Operator.
* Example: { someField: IsNull() }
*/
declare function IsNull(): FindOperator<any>;
/**
* Find Options Operator.
* Example: { someField: LessThan(10) }
*/
declare function LessThan<T>(value: T | FindOperator<T>): FindOperator<T>;
/**
* Find Options Operator.
* Example: { someField: LessThanOrEqual(10) }
*/
declare function LessThanOrEqual<T>(value: T | FindOperator<T>): FindOperator<T>;
/**
* Find Options Operator.
* Example: { someField: ILike("%SOME string%") }
*/
declare function ILike<T>(value: T | FindOperator<T>): FindOperator<T>;
/**
* Find Options Operator.
* Example: { someField: Like("%some string%") }
*/
declare function Like<T>(value: T | FindOperator<T>): FindOperator<T>;
/**
* Find Options Operator.
* Example: { someField: MoreThan(10) }
*/
declare function MoreThan<T>(value: T | FindOperator<T>): FindOperator<T>;
/**
* Find Options Operator.
* Example: { someField: MoreThanOrEqual(10) }
*/
declare function MoreThanOrEqual<T>(value: T | FindOperator<T>): FindOperator<T>;
/**
* Find Options Operator.
* Used to negate expression.
* Example: { title: not("hello") } will return entities where title not equal to "hello".
*/
declare function Not<T>(value: T | FindOperator<T>): FindOperator<T>;
/**
* Find Options Operator.
* Example: { someField: Raw("12") }
*/
declare function Raw<T>(value: string): FindOperator<any>;
/**
* Find Options Operator.
* Example: { someField: Raw((columnAlias) => `${columnAlias} = 5`) }
*/
declare function Raw<T>(sqlGenerator: (columnAlias: string) => string): FindOperator<any>;
/**
* Find Options Operator.
* For escaping parameters use next syntax:
* Example: { someField: Raw((columnAlias) => `${columnAlias} = :value`, { value: 5 }) }
*/
declare function Raw<T>(sqlGenerator: (columnAlias: string) => string, parameters: ObjectLiteral): FindOperator<any>;
/**
* FindOptions Operator.
* Example: { someField: JsonContains({...}) }
*/
declare function JsonContains<T extends Record<string | number | symbol, unknown>>(value: T | FindOperator<T>): FindOperator<any>;
export { And, Any, ArrayContainedBy, ArrayContains, ArrayOverlap, Between, Equal, ILike, In, IsNull, JsonContains, LessThan, LessThanOrEqual, Like, MoreThan, MoreThanOrEqual, Not, Or, Raw };