import DBConnection from './db/DBConnection.js'; import { Propagation } from "./db/Transaction.js"; export default class TransactionManager { private static threadLocal; private static _logger; private static get logger(); static getCurrentConnection(): DBConnection | undefined; /** * Executes database operations while managing connection lifecycle and transaction state automatically. * Supports REQUIRED, REQUIRES_NEW, and NONE propagation behaviors. * @param propagation Transaction propagation behavior. * @param fn Business processor function receiving the database connection. */ static execute(propagation: Propagation, fn: (conn: DBConnection) => Promise): Promise; }