@squareboat/nestjs-objection
Version:
The objection database package for your NestJS Applications
18 lines (17 loc) • 1.06 kB
TypeScript
import { QueryBuilder, Model, Page, PrimitiveValue, Expression } from "objection";
import { GenericFunction, Pagination } from "../interfaces";
export declare class CustomQueryBuilder<M extends Model, R = M[]> extends QueryBuilder<M, R> {
ArrayQueryBuilderType: CustomQueryBuilder<M, M[]>;
SingleQueryBuilderType: CustomQueryBuilder<M, M>;
NumberQueryBuilderType: CustomQueryBuilder<M, number>;
PageQueryBuilderType: CustomQueryBuilder<M, Page<M>>;
paginate<T>(page: number, perPage: number): Promise<Pagination<T>>;
allPages<T>(): Promise<Pagination<T>>;
onlyCount(): Promise<number>;
exists(): Promise<boolean>;
chunk(cb: GenericFunction, size: number): Promise<void>;
cOrderBy(expressions: string): this;
when(condition: any, truthyCb: (query: CustomQueryBuilder<M, R>, condition: any) => this, falsyCb?: (query: CustomQueryBuilder<M, R>, condition: any) => this): this;
safeWhereIn(col: string, expr: Expression<PrimitiveValue>): this;
safeWhereNotIn(col: string, expr: Expression<PrimitiveValue>): this;
}