@nodeboot/starter-persistence
Version:
Nodeboot starter package for persistence. Supports data access layer auto-configuration providing features like database initialization, consistency check, entity mapping, repository pattern, transactions, paging, migrations, persistence listeners, persis
42 lines • 1.49 kB
TypeScript
import { EntityManager, QueryRunner, Repository } from "typeorm";
/**
* Retrieves the `EntityManager` associated with a given TypeORM repository instance.
*
* @template R - A repository extending TypeORM's Repository.
* @param repoInstance - An instance of a TypeORM Repository.
* @returns The associated `EntityManager`.
* @throws Error if the repository instance is invalid or lacks an EntityManager.
*
* @example
* ```ts
* import { useEntityManager } from "@nodeboot/starter-persistence";
*
* const entityManager = useEntityManager(this.userRepository);
* await entityManager.find(User);
* ```
*
* @author
* Manuel Santos <https://github.com/manusant>
*/
export declare function useEntityManager<R extends Repository<any>>(repoInstance: R): EntityManager;
/**
* Retrieves the `QueryRunner` associated with a given TypeORM repository instance.
*
* @template R - A repository extending TypeORM's Repository.
* @param repoInstance - An instance of a TypeORM Repository.
* @returns The associated `QueryRunner`.
* @throws Error if the repository does not have a valid `QueryRunner`.
*
* @example
* ```ts
* import { useQueryRunner } from "@nodeboot/starter-persistence";
*
* const runner = useQueryRunner(this.userRepository);
* await runner.connect();
* ```
*
* @author
* Manuel Santos <https://github.com/manusant>
*/
export declare function useQueryRunner<R extends Repository<any>>(repoInstance: R): QueryRunner;
//# sourceMappingURL=sql.hooks.d.ts.map