Class: TransactionManager
Defined in: packages/txm/lib/TransactionManager.ts:216
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
Constructor
new TransactionManager(_config: TransactionManagerConfig): TransactionManager;Defined in: packages/txm/lib/TransactionManager.ts:249
Parameters
_config
Returns
TransactionManager
Methods
addHook()
addHook<T>(type: T, handler: TxmHookHandler<T>): () => void;Defined in: packages/txm/lib/TransactionManager.ts:381
Adds a hook to the hook manager.
Type Parameters
T
T extends TxmHookType
Parameters
type
T
The type of hook to add.
handler
The handler function to add.
Returns
(): void;Returns
void
addTransactionOriginator()
addTransactionOriginator(originator: TransactionOriginator): void;Defined in: packages/txm/lib/TransactionManager.ts:372
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
The originator to add.
Returns
void
createTransaction()
createTransaction(params: TransactionConstructorConfig): Transaction;Defined in: packages/txm/lib/TransactionManager.ts:394
Creates a new transaction.
Parameters
params
Returns
A new transaction.
getTransaction()
getTransaction(txIntentId: UUID): Promise<Result<undefined | Transaction, Error>>;Defined in: packages/txm/lib/TransactionManager.ts:385
Parameters
txIntentId
UUID
Returns
Promise<Result<undefined | Transaction, Error>>
start()
start(): Promise<void>;Defined in: packages/txm/lib/TransactionManager.ts:402
Returns
Promise<void>
Properties
abiManager
readonly abiManager: ABIManager;Defined in: packages/txm/lib/TransactionManager.ts:224
baseFeeMargin
readonly baseFeeMargin: bigint;Defined in: packages/txm/lib/TransactionManager.ts:235
blockInactivityTimeout
readonly blockInactivityTimeout: number;Defined in: packages/txm/lib/TransactionManager.ts:242
blockMonitor
readonly blockMonitor: BlockMonitor;Defined in: packages/txm/lib/TransactionManager.ts:218
blockTime
readonly blockTime: bigint;Defined in: packages/txm/lib/TransactionManager.ts:238
chainId
readonly chainId: number;Defined in: packages/txm/lib/TransactionManager.ts:233
collectors
readonly collectors: TransactionOriginator[];Defined in: packages/txm/lib/TransactionManager.ts:217
eip1559
readonly eip1559: EIP1559Parameters;Defined in: packages/txm/lib/TransactionManager.ts:234
finalizedTransactionPurgeTime
readonly finalizedTransactionPurgeTime: number;Defined in: packages/txm/lib/TransactionManager.ts:239
gasEstimator
readonly gasEstimator: GasEstimator;Defined in: packages/txm/lib/TransactionManager.ts:223
gasPriceOracle
readonly gasPriceOracle: GasPriceOracle;Defined in: packages/txm/lib/TransactionManager.ts:222
hookManager
readonly hookManager: HookManager;Defined in: packages/txm/lib/TransactionManager.ts:229
livenessCheckInterval
readonly livenessCheckInterval: number;Defined in: packages/txm/lib/TransactionManager.ts:247
livenessDownDelay
readonly livenessDownDelay: number;Defined in: packages/txm/lib/TransactionManager.ts:246
livenessSuccessCount
readonly livenessSuccessCount: number;Defined in: packages/txm/lib/TransactionManager.ts:245
livenessThreshold
readonly livenessThreshold: number;Defined in: packages/txm/lib/TransactionManager.ts:244
livenessWindow
readonly livenessWindow: number;Defined in: packages/txm/lib/TransactionManager.ts:243
maxPriorityFeePerGas
readonly maxPriorityFeePerGas: bigint;Defined in: packages/txm/lib/TransactionManager.ts:236
nonceManager
readonly nonceManager: NonceManager;Defined in: packages/txm/lib/TransactionManager.ts:221
pendingTxReporter
readonly pendingTxReporter: TxMonitor;Defined in: packages/txm/lib/TransactionManager.ts:225
pollingInterval
readonly pollingInterval: number;Defined in: packages/txm/lib/TransactionManager.ts:240
retryPolicyManager
readonly retryPolicyManager: RetryPolicyManager;Defined in: packages/txm/lib/TransactionManager.ts:230
rpcAllowDebug
readonly rpcAllowDebug: boolean;Defined in: packages/txm/lib/TransactionManager.ts:237
rpcLivenessMonitor
readonly rpcLivenessMonitor: RpcLivenessMonitor;Defined in: packages/txm/lib/TransactionManager.ts:231
transactionCollector
readonly transactionCollector: TransactionCollector;Defined in: packages/txm/lib/TransactionManager.ts:227
transactionRepository
readonly transactionRepository: TransactionRepository;Defined in: packages/txm/lib/TransactionManager.ts:226
transactionSubmitter
readonly transactionSubmitter: TransactionSubmitter;Defined in: packages/txm/lib/TransactionManager.ts:228
transportProtocol
readonly transportProtocol: "http" | "websocket";Defined in: packages/txm/lib/TransactionManager.ts:241
viemClient
readonly viemClient: SafeViemPublicClient;Defined in: packages/txm/lib/TransactionManager.ts:220
viemWallet
readonly viemWallet: SafeViemWalletClient;Defined in: packages/txm/lib/TransactionManager.ts:219