typeorm
Version:
Data-Mapper ORM for TypeScript, ES7, ES6, ES5. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, MongoDB databases.
34 lines (33 loc) • 1.41 kB
TypeScript
import { Subject } from "./Subject";
import { ObjectLiteral } from "../common/ObjectLiteral";
import { QueryRunner } from "../query-runner/QueryRunner";
/**
* Loads database entities for all operate subjects which do not have database entity set.
* All entities that we load database entities for are marked as updated or inserted.
* To understand which of them really needs to be inserted or updated we need to load
* their original representations from the database.
*/
export declare class SubjectDatabaseEntityLoader {
protected queryRunner: QueryRunner;
protected subjects: Subject[];
constructor(queryRunner: QueryRunner, subjects: Subject[]);
/**
* Loads database entities for all subjects.
*
* loadAllRelations flag is used to load all relation ids of the object, no matter if they present in subject entity or not.
* This option is used for deletion.
*/
load(operationType: "save" | "remove"): Promise<void>;
/**
* Finds subject where entity like given subject's entity.
* Comparision made by entity id.
*/
protected findByPersistEntityLike(entityTarget: Function | string, entity: ObjectLiteral): Subject | undefined;
/**
* Groups given Subject objects into groups separated by entity targets.
*/
protected groupByEntityTargets(): {
target: Function | string;
subjects: Subject[];
}[];
}