Class: TransactionManager
The TransactionManager is the core module of the transaction manager. To use the transaction manager, you must instantiate this class. Before using the transaction manager, call the TransactionManager.start method to start it. Once started, use the TransactionManager.addTransactionOriginator method to add a transaction originator and begin sending transactions to the blockchain.
Constructors
new TransactionManager()
new TransactionManager(_config: TransactionManagerConfig): TransactionManagerParameters
• _config: TransactionManagerConfig
Returns
Defined in
packages/transaction-manager/lib/TransactionManager.ts:163
Methods
addHook()
addHook(handler: TxmHookHandler, type: TxmHookType): Promise<void>Adds a hook to the hook manager.
Parameters
• handler: TxmHookHandler
The handler function to add.
• type: TxmHookType
The type of hook to add.
Returns
Promise<void>
Defined in
packages/transaction-manager/lib/TransactionManager.ts:267
addTransactionOriginator()
addTransactionOriginator(originator: TransactionOriginator): voidAdds an originator to the transaction manager. An originator is a function that returns a list of transactions to be sent in the next block. It is important that the originator function is as fast as possible to avoid delays when sending transactions to the blockchain
Parameters
• originator: TransactionOriginator
The originator to add.
Returns
void
Defined in
packages/transaction-manager/lib/TransactionManager.ts:258
createTransaction()
createTransaction(params: TransactionConstructorConfig): TransactionCreates a new transaction.
Parameters
• params: TransactionConstructorConfig
Returns
A new transaction.
Defined in
packages/transaction-manager/lib/TransactionManager.ts:280
getTransaction()
getTransaction(txIntentId: UUID): Promise<undefined | Transaction>Parameters
• txIntentId: UUID
Returns
Promise<undefined | Transaction>
Defined in
packages/transaction-manager/lib/TransactionManager.ts:271
start()
start(): Promise<void>Returns
Promise<void>
Defined in
packages/transaction-manager/lib/TransactionManager.ts:288
Properties
abiManager
readonly abiManager: ABIManager;Defined in
packages/transaction-manager/lib/TransactionManager.ts:147
baseFeeMargin
readonly baseFeeMargin: bigint;Defined in
packages/transaction-manager/lib/TransactionManager.ts:157
blockMonitor
readonly blockMonitor: BlockMonitor;Defined in
packages/transaction-manager/lib/TransactionManager.ts:141
blockTime
readonly blockTime: bigint;Defined in
packages/transaction-manager/lib/TransactionManager.ts:160
chainId
readonly chainId: number;Defined in
packages/transaction-manager/lib/TransactionManager.ts:155
collectors
readonly collectors: TransactionOriginator[];Defined in
packages/transaction-manager/lib/TransactionManager.ts:140
eip1559
readonly eip1559: EIP1559Parameters;Defined in
packages/transaction-manager/lib/TransactionManager.ts:156
finalizedTransactionPurgeTime
readonly finalizedTransactionPurgeTime: number;Defined in
packages/transaction-manager/lib/TransactionManager.ts:161
gasEstimator
readonly gasEstimator: GasEstimator;Defined in
packages/transaction-manager/lib/TransactionManager.ts:146
gasPriceOracle
readonly gasPriceOracle: GasPriceOracle;Defined in
packages/transaction-manager/lib/TransactionManager.ts:145
hookManager
readonly hookManager: HookManager;Defined in
packages/transaction-manager/lib/TransactionManager.ts:152
maxPriorityFeePerGas
readonly maxPriorityFeePerGas: bigint;Defined in
packages/transaction-manager/lib/TransactionManager.ts:158
nonceManager
readonly nonceManager: NonceManager;Defined in
packages/transaction-manager/lib/TransactionManager.ts:144
pendingTxReporter
readonly pendingTxReporter: TxMonitor;Defined in
packages/transaction-manager/lib/TransactionManager.ts:148
retryPolicyManager
readonly retryPolicyManager: RetryPolicyManager;Defined in
packages/transaction-manager/lib/TransactionManager.ts:153
rpcAllowDebug
readonly rpcAllowDebug: boolean;Defined in
packages/transaction-manager/lib/TransactionManager.ts:159
transactionCollector
readonly transactionCollector: TransactionCollector;Defined in
packages/transaction-manager/lib/TransactionManager.ts:150
transactionRepository
readonly transactionRepository: TransactionRepository;Defined in
packages/transaction-manager/lib/TransactionManager.ts:149
transactionSubmitter
readonly transactionSubmitter: TransactionSubmitter;Defined in
packages/transaction-manager/lib/TransactionManager.ts:151
viemClient
readonly viemClient: SafeViemPublicClient;Defined in
packages/transaction-manager/lib/TransactionManager.ts:143
viemWallet
readonly viemWallet: SafeViemWalletClient;