Skip to content

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): TransactionManager

Parameters

_config: TransactionManagerConfig

Returns

TransactionManager

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): void

Adds 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): Transaction

Creates a new transaction.

Parameters

params: TransactionConstructorConfig

TransactionConstructorConfig.

Returns

Transaction

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;

Defined in

packages/transaction-manager/lib/TransactionManager.ts:142