UNPKG

miter

Version:

A typescript web framework based on ExpressJs based loosely on SailsJs

57 lines (56 loc) 2.97 kB
import * as Sql from 'sequelize'; import { StaticModelT, ModelT, PkType, Db } from '../../core/model'; import { QueryT, CountQueryT, DestroyQueryT } from '../../core/db'; import { Logger } from '../../services/logger'; import { Sequelize } from '../sequelize'; import { TransactionService } from '../../services/transaction.service'; import { TransactionImpl } from './transaction-impl'; export declare class DbImpl<T extends ModelT<PkType>, TInstance, TAttributes> implements Db<T> { private modelFn; private model; private sequelize; private logger; private transactionService; constructor(modelFn: StaticModelT<T>, model: Sql.Model<TInstance, TAttributes>, sequelize: Sequelize, logger: Logger, transactionService: TransactionService); private getSqlTransact(transaction?); private transaction(name, transaction?); create(t: Object | T | Object[] | T[], transaction?: TransactionImpl): Promise<any>; findById(id: string | number, options?: QueryT, transaction?: TransactionImpl): Promise<T>; findOne(query: QueryT, transaction?: TransactionImpl): Promise<T>; findOrCreate(query: Sql.WhereOptions, defaults?: Object | T, transaction?: TransactionImpl): Promise<[T, boolean]>; findAndCountAll(query?: QueryT, transaction?: TransactionImpl): Promise<{ count: any; results: T[]; }>; findAll(query?: QueryT, transaction?: TransactionImpl): Promise<T[]>; all(query?: QueryT, transaction?: TransactionImpl): Promise<T[]>; count(query?: CountQueryT, transaction?: TransactionImpl): Promise<any>; max(field: string, transaction?: TransactionImpl): Promise<any>; min(field: string, transaction?: TransactionImpl): Promise<any>; sum(field: string, transaction?: TransactionImpl): Promise<any>; save(t: T, transaction?: TransactionImpl): Promise<T>; update(query: number | string | T | QueryT, replace: Object, returning?: boolean, transaction?: TransactionImpl): Promise<[boolean | number, any]>; updateOrCreate(query: Sql.WhereOptions, defaults: Object | T, transaction?: TransactionImpl): Promise<[T, boolean]>; destroy(query: number | string | T | DestroyQueryT, transaction?: TransactionImpl): Promise<any>; private isId(query); private isT(query); private copyVals; private createCopyValsFn(); private static getForeignModelDbImpl(foreignModel); private transformQueryWhere; private transformQueryInclude; private transformResult; private includeFields; private createTransformQuery(); private transformQuery(query); private transforms; private getTransforms(); private composeAnd(query, $and); private addPrefix(query, prefix); private createTransformQueryWhere(transforms); private createTransformQueryInclude(); private createTransformResult(transforms); fromJson(json: any): T; private wrapResult(result, implicitIncludes); private wrapResults(results, implicitIncludes); }