UNPKG

nowjs-core

Version:

NowCanDo Javascript Core [nowjs-core] is a library written by TypeScript code maintains under Apache 2.0 licence

20 lines (19 loc) 811 B
import { IRepository, Predicate, Selector } from '../../core/index'; import { IQueryExpression } from '../IQueryExression'; import { IDbCommandExecutePlan } from './IDbCommandExecutePlan'; import { IDbQueryPagedResult } from './IDbQueryPagedResult'; export interface DbQueryOptions<T> { query: string | Predicate<T> | IQueryExpression<T>; pageSize?: number; pageIndex?: number; selectBy?: string[] | Array<Selector<T>>; groupBy?: string[] | Array<Selector<T>>; sortBy: { [fieldname: string]: 'asc' | 'desc'; }; } export interface IDbRepository<T, TSource, TDb> extends IRepository<T> { getSource(dbName?: string): Promise<TSource>; getDb(dbName?: string): Promise<TDb>; query(options: DbQueryOptions<T>): Promise<IDbQueryPagedResult<T, IDbCommandExecutePlan>>; }