UNPKG

database-builder

Version:

Library to assist in creating and maintaining SQL commands.

29 lines (28 loc) 1.35 kB
import { TypeCrud } from "./enums/type-crud"; import { DatabaseBase, DatabaseResult } from "../definitions/database-definition"; import { CrudBaseBuilder } from "./crud-base-builder"; import { ColumnsValuesBuilder } from "../core/columns-values-builder"; import { MapperTable } from "../mapper-table"; import { QueryCompiled } from "../core/query-compiled"; import { SqlBase } from "./sql-base"; import { Observable } from "rxjs"; export declare abstract class CrudBase<T, TBuilder extends CrudBaseBuilder<T, TColumnsBuilder>, TColumnsBuilder extends ColumnsValuesBuilder<T, TColumnsBuilder>> extends SqlBase<T> { private _typeCrud; readonly __allowInTransaction: boolean; protected readonly _builder: TBuilder; constructor(_typeCrud: TypeCrud, { mapperTable, builder, database, enableLog }: { mapperTable: MapperTable; builder: TBuilder; database?: DatabaseBase; enableLog?: boolean; }); protected dependencies(): MapperTable[]; protected model(): T | Array<T>; protected builderCompiled(): QueryCompiled | QueryCompiled[]; protected checkDatabaseResult(observable: Observable<DatabaseResult[]>): Observable<DatabaseResult[]>; /** * rowsAffected: 3 * id: 6 */ protected setKeyByResult(models: Array<T>, result: DatabaseResult): T[]; }