@tsrt/typeorm-transactions
Version:
TypeORM convenient transactions management
21 lines (20 loc) • 1.34 kB
TypeScript
import { Connection } from 'typeorm';
import { Transaction, ITransaction, ITransactionOptions, ITransactionOptionsExtended } from './Transaction';
export declare class TransactionManager implements ITransactionManager {
protected readonly _options: ITransactionOptionsExtended;
private _connection;
constructor(_options?: ITransactionOptionsExtended);
createTransaction(options?: ITransactionOptions): Transaction;
transaction(options?: ITransactionOptions): Promise<Transaction>;
transaction<R = unknown>(cb: (transaction: Transaction) => Promise<R>, options?: ITransactionOptions): Promise<R>;
autoTransaction<R = unknown>(cb: (transaction: Transaction) => Promise<R>, options?: ITransactionOptions): Promise<R>;
get connection(): Connection;
protected _getDefaultOptions<O extends ITransactionOptions>(options?: O): O;
}
export interface ITransactionManager {
createTransaction(options?: ITransactionOptions): ITransaction;
transaction(options?: ITransactionOptions): Promise<ITransaction>;
transaction<R = unknown>(cb: TransactionCallback<R>, options?: ITransactionOptions): Promise<R>;
autoTransaction<R = unknown>(cb: TransactionCallback<R>, options?: ITransactionOptions): Promise<R>;
}
export declare type TransactionCallback<R = unknown> = (transaction: ITransaction) => Promise<R>;