@tevm/voltaire / primitives/Transaction
primitives/Transaction
Namespaces
Enumerations
Type
Defined in: src/primitives/Transaction/types.ts:7 Transaction type discriminatorEnumeration Members
EIP1559
EIP1559: 2
Defined in: src/primitives/Transaction/types.ts:10
EIP2930
EIP2930: 1
Defined in: src/primitives/Transaction/types.ts:9
EIP4844
EIP4844: 3
Defined in: src/primitives/Transaction/types.ts:11
EIP7702
EIP7702: 4
Defined in: src/primitives/Transaction/types.ts:12
Legacy
Legacy: 0
Defined in: src/primitives/Transaction/types.ts:8
Type Aliases
AccessList
AccessList = readonly AccessListItem[]
Defined in: src/primitives/Transaction/types.ts:26
Access list (array of items)
AccessListItem
AccessListItem = object
Defined in: src/primitives/Transaction/types.ts:18
Access list item for EIP-2930 and later transactions
Properties
address
address: AddressType
Defined in: src/primitives/Transaction/types.ts:19
storageKeys
storageKeys: readonly HashType[]
Defined in: src/primitives/Transaction/types.ts:20
Any
Any =Defined in: src/primitives/Transaction/types.ts:155 Any transaction typeLegacy|EIP2930|EIP1559|EIP4844|EIP7702
AuthorizationList
AuthorizationList = readonly Authorization[]
Defined in: src/primitives/Transaction/types.ts:43
Authorization list (array of authorizations)
ReplaceOptions
ReplaceOptions = object
Defined in: src/primitives/Transaction/replaceWith.ts:13
Options for fee bump replacement
Properties
bumpPercentage?
Defined in: src/primitives/Transaction/replaceWith.ts:15 Increase gas price by percentage (e.g., 10 for 10% increase)optionalbumpPercentage:number
gasPrice?
Defined in: src/primitives/Transaction/replaceWith.ts:17 Explicit gas price to use (overrides bumpPercentage)optionalgasPrice:bigint
maxFeePerGas?
Defined in: src/primitives/Transaction/replaceWith.ts:19 Explicit maxFeePerGas (EIP-1559+)optionalmaxFeePerGas:bigint
maxPriorityFeePerGas?
Defined in: src/primitives/Transaction/replaceWith.ts:21 Explicit maxPriorityFeePerGas (EIP-1559+)optionalmaxPriorityFeePerGas:bigint
Signature
Signature = object
Defined in: src/primitives/Transaction/types.ts:53
Signature components (ECDSA secp256k1)
Properties
r
r: Uint8Array
Defined in: src/primitives/Transaction/types.ts:54
s
s: Uint8Array
Defined in: src/primitives/Transaction/types.ts:55
Transaction
Transaction = Any
Defined in: src/primitives/Transaction/Transaction.ts:138
VersionedHash
VersionedHash = HashType
Defined in: src/primitives/Transaction/types.ts:48
Versioned hash for EIP-4844 blob transactions
Functions
assertSigned()
assertSigned(Defined in: src/primitives/Transaction/Transaction.ts:232 Assert transaction is signedtx):void
Parameters
tx
Any
Returns
void
assertSigned_internal()
assertSigned_internal(Defined in: src/primitives/Transaction/assertSigned.ts:17 Assert transaction is signed (has non-zero signature).this):void
Parameters
this
Any
Returns
void
void
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
If transaction is not signedExample
deserialize()
deserialize(Defined in: src/primitives/Transaction/deserialize.ts:24 Deserialize RLP encoded transaction.data):Any
Parameters
data
Uint8Array
RLP encoded transaction data
Returns
Any
Deserialized transaction
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
If transaction type is unknown or unsupportedExample
detectType()
detectType(Defined in: src/primitives/Transaction/detectType.ts:13 Detect transaction type from serialized datadata):Type
Parameters
data
Uint8Array
Returns
Type
Throws
If transaction data is emptyThrows
If transaction type byte is unknownformat()
format(Defined in: src/primitives/Transaction/Transaction.ts:197 Format transaction to human-readable stringtx):string
Parameters
tx
Any
Returns
string
format_internal()
format_internal(Defined in: src/primitives/Transaction/format.ts:6 Format transaction to human-readable stringthis):string
Parameters
this
Any
Returns
string
fromRpc()
fromRpc(Defined in: src/primitives/Transaction/fromRpc.js:110 Parse transaction from JSON-RPC formatrpc):Any
Parameters
rpc
RpcTransaction
JSON-RPC formatted transaction
Returns
Any
Parsed transaction
Example
getAccessList()
getAccessList(Defined in: src/primitives/Transaction/Transaction.ts:218 Get access list (empty for legacy transactions)tx):AccessList
Parameters
tx
Any
Returns
AccessList
getAccessList_internal()
getAccessList_internal(Defined in: src/primitives/Transaction/getAccessList.ts:17 Get access list (empty for legacy transactions).this):AccessList
Parameters
this
Any
Returns
AccessList
Transaction access list
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
Never throwsExample
getAuthorizationCount()
getAuthorizationCount(Defined in: src/primitives/Transaction/Transaction.ts:353 Get authorization count for EIP-7702 transactiontx):number
Parameters
tx
EIP7702
Returns
number
getAuthorizationCount_internal()
getAuthorizationCount_internal(Defined in: src/primitives/Transaction/getAuthorizationCount.ts:8 Get authorization count for EIP-7702 transactionthis):number
Parameters
this
EIP7702
EIP7702 transaction
Returns
number
Number of authorizations
getAuthorizations()
getAuthorizations(Defined in: src/primitives/Transaction/Transaction.ts:360 Get authorization list for EIP-7702 transactiontx):AuthorizationList
Parameters
tx
EIP7702
Returns
AuthorizationList
getAuthorizations_internal()
getAuthorizations_internal(Defined in: src/primitives/Transaction/getAuthorizations.ts:8 Get authorization list for EIP-7702 transactionthis):AuthorizationList
Parameters
this
EIP7702
EIP7702 transaction
Returns
AuthorizationList
Array of authorizations
getBlobCount()
getBlobCount(Defined in: src/primitives/Transaction/Transaction.ts:339 Get blob count for EIP-4844 transactiontx):number
Parameters
tx
EIP4844
Returns
number
getBlobCount_internal()
getBlobCount_internal(Defined in: src/primitives/Transaction/getBlobCount.ts:8 Get blob count for EIP-4844 transactionthis):number
Parameters
this
EIP4844
EIP4844 transaction
Returns
number
Number of blobs
getBlobVersionedHashes()
getBlobVersionedHashes(Defined in: src/primitives/Transaction/Transaction.ts:346 Get blob versioned hashes for EIP-4844 transactiontx): readonlyHashType[]
Parameters
tx
EIP4844
Returns
readonlyHashType[]
getBlobVersionedHashes_internal()
getBlobVersionedHashes_internal(Defined in: src/primitives/Transaction/getBlobVersionedHashes.ts:8 Get blob versioned hashes for EIP-4844 transactionthis): readonlyHashType[]
Parameters
this
EIP4844
EIP4844 transaction
Returns
readonlyHashType[]
Array of versioned hashes
getChainId()
getChainId(Defined in: src/primitives/Transaction/Transaction.ts:225 Get chain ID from transactiontx):bigint|null
Parameters
tx
Any
Returns
bigint | null
getChainId_internal()
getChainId_internal(Defined in: src/primitives/Transaction/getChainId.ts:18 Get chain ID (null for pre-EIP-155 legacy transactions).this):bigint|null
Parameters
this
Any
Returns
bigint | null
Chain ID or null for pre-EIP-155
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
Never throwsExample
getGasPrice()
getGasPrice(Defined in: src/primitives/Transaction/Transaction.ts:204 Get effective gas price for transactiontx,baseFee?):bigint
Parameters
tx
Any
baseFee?
bigint
Returns
bigint
getGasPrice_internal()
getGasPrice_internal(Defined in: src/primitives/Transaction/getGasPrice.ts:32 Get transaction gas price (handles different types).this,baseFee?):bigint
Parameters
this
Any
baseFee?
bigint
Optional base fee for EIP-1559 transactions
Returns
bigint
Gas price
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
If baseFee is missing for EIP-1559+ transactionsThrows
If transaction type is unknownExample
getRecipient()
getRecipient(Defined in: src/primitives/Transaction/Transaction.ts:246 Get recipient address from transactiontx):AddressType|null
Parameters
tx
Any
Returns
AddressType | null
getRecipient_internal()
getRecipient_internal(Defined in: src/primitives/Transaction/getRecipient.ts:20 Get recipient address from transaction. Returns thethis):AddressType|null
to field of the transaction. For contract creation transactions
where to is null, this returns null.
Parameters
this
Any
Transaction
Returns
AddressType | null
Recipient address or null for contract creation
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Example
getSender()
getSender(Defined in: src/primitives/Transaction/Transaction.ts:183 Get sender address from transaction signaturetx):AddressType
Parameters
tx
Any
Returns
AddressType
getSender_internal()
getSender_internal(Defined in: src/primitives/Transaction/getSender.ts:23 Get sender address from transaction signature.this):AddressType
Parameters
this
Any
Returns
AddressType
Sender address
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
If transaction type is unknown or unsupportedExample
getSigningHash()
getSigningHash(Defined in: src/primitives/Transaction/Transaction.ts:176 Get signing hash for transactiontx):HashType
Parameters
tx
Any
Returns
HashType
getSigningHash_internal()
getSigningHash_internal(Defined in: src/primitives/Transaction/getSigningHash.ts:23 Get signing hash for transaction.this):HashType
Parameters
this
Any
Returns
HashType
Signing hash
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
If transaction type is unknown or unsupportedExample
hasAccessList()
hasAccessList(Defined in: src/primitives/Transaction/Transaction.ts:211 Check if transaction has access listtx):boolean
Parameters
tx
Any
Returns
boolean
hasAccessList_internal()
hasAccessList_internal(Defined in: src/primitives/Transaction/hasAccessList.ts:7 Check if transaction has access listthis):boolean
Parameters
this
Any
Returns
boolean
hash()
hash(Defined in: src/primitives/Transaction/Transaction.ts:169 Compute transaction hashtx):HashType
Parameters
tx
Any
Returns
HashType
hash_internal()
hash_internal(Defined in: src/primitives/Transaction/hash.ts:23 Compute transaction hash.this):HashType
Parameters
this
Any
Returns
HashType
Transaction hash
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
If transaction type is unknown or unsupportedExample
isContractCall()
isContractCall(Defined in: src/primitives/Transaction/Transaction.ts:260 Check if transaction is a contract calltx):boolean
Parameters
tx
Any
Returns
boolean
isContractCall_internal()
isContractCall_internal(Defined in: src/primitives/Transaction/isContractCall.ts:7 Check if transaction is a contract callthis):boolean
Parameters
this
Transactiondata
Uint8Array
to
any
Returns
boolean
True if to exists and data is present
isContractCreation()
isContractCreation(Defined in: src/primitives/Transaction/Transaction.ts:253 Check if transaction is a contract creationtx):boolean
Parameters
tx
Any
Returns
boolean
isContractCreation_internal()
isContractCreation_internal(Defined in: src/primitives/Transaction/isContractCreation.ts:7 Check if transaction is a contract creationthis):boolean
Parameters
this
Transactionto
any
Returns
boolean
True if to field is null
isEIP1559()
isEIP1559(Defined in: src/primitives/Transaction/typeGuards.ts:32 Check if transaction is EIP-1559 typetx):tx is EIP1559
Parameters
tx
Any
Returns
tx is EIP1559
isEIP2930()
isEIP2930(Defined in: src/primitives/Transaction/typeGuards.ts:25 Check if transaction is EIP-2930 typetx):tx is EIP2930
Parameters
tx
Any
Returns
tx is EIP2930
isEIP4844()
isEIP4844(Defined in: src/primitives/Transaction/typeGuards.ts:39 Check if transaction is EIP-4844 typetx):tx is EIP4844
Parameters
tx
Any
Returns
tx is EIP4844
isEIP7702()
isEIP7702(Defined in: src/primitives/Transaction/typeGuards.ts:46 Check if transaction is EIP-7702 typetx):tx is EIP7702
Parameters
tx
Any
Returns
tx is EIP7702
isLegacy()
isLegacy(Defined in: src/primitives/Transaction/typeGuards.ts:18 Check if transaction is Legacy typetx):tx is Legacy
Parameters
tx
Any
Returns
tx is Legacy
isSigned()
isSigned(Defined in: src/primitives/Transaction/Transaction.ts:239 Check if transaction is signedtx):boolean
Parameters
tx
Any
Returns
boolean
isSigned_internal()
isSigned_internal(Defined in: src/primitives/Transaction/isSigned.ts:17 Check if transaction is signed.this):boolean
Parameters
this
Any
Returns
boolean
True if transaction has valid signature
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
Never throwsExample
replaceWith()
replaceWith(Defined in: src/primitives/Transaction/Transaction.ts:332 Return new transaction with fee bump for replacementtx,options?):Any
Parameters
tx
Any
options?
ReplaceOptions
Returns
Any
replaceWith_internal()
replaceWith_internal(Defined in: src/primitives/Transaction/replaceWith.ts:30 Return new transaction with fee bump for replacementthis,options):Any
Parameters
this
Any
Transaction
options
ReplaceOptions = {}
Replacement options
Returns
Any
New transaction with increased fees
serialize()
serialize(Defined in: src/primitives/Transaction/Transaction.ts:162 Serialize transaction to RLP encoded bytestx):Uint8Array
Parameters
tx
Any
Returns
Uint8Array
serialize_internal()
serialize_internal(Defined in: src/primitives/Transaction/serialize.ts:22 Serialize transaction to RLP encoded bytes.this):Uint8Array
Parameters
this
Any
Returns
Uint8Array
RLP encoded transaction
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
If transaction type is unknown or unsupportedExample
toRpc()
toRpc(Defined in: src/primitives/Transaction/toRpc.js:46 Convert transaction to JSON-RPC formattx):object
Parameters
tx
Any
Transaction to convert
Returns
object
JSON-RPC formatted transaction
Example
validateChainId()
validateChainId(Defined in: src/primitives/Transaction/Transaction.ts:295 Validate chain ID is presenttx):void
Parameters
tx
Any
Returns
void
validateChainId_internal()
validateChainId_internal(Defined in: src/primitives/Transaction/validateChainId.ts:9 Validate chain ID is presentthis):void
Parameters
this
TransactionEIP2930 | EIP1559 | EIP4844 | EIP7702
Returns
void
Throws
If chainId is missing or invalidvalidateGasLimit()
validateGasLimit(Defined in: src/primitives/Transaction/Transaction.ts:274 Validate gas limit is validtx):void
Parameters
tx
Any
Returns
void
validateGasLimit_internal()
validateGasLimit_internal(Defined in: src/primitives/Transaction/validateGasLimit.ts:8 Validate gas limit is validthis):void
Parameters
this
TransactiongasLimit
bigint
Returns
void
Throws
If gas limit is non-positive or exceeds maximumvalidateGasPrice()
validateGasPrice(Defined in: src/primitives/Transaction/Transaction.ts:267 Validate gas price is reasonabletx):void
Parameters
tx
Any
Returns
void
validateGasPrice_internal()
validateGasPrice_internal(Defined in: src/primitives/Transaction/validateGasPrice.ts:9 Validate gas price is reasonablethis):void
Parameters
this
TransactionLegacy | EIP2930 | EIP1559 | EIP4844 | EIP7702
Returns
void
Throws
If gas price or fee values are invalidvalidateNonce()
validateNonce(Defined in: src/primitives/Transaction/Transaction.ts:281 Validate nonce formattx):void
Parameters
tx
Any
Returns
void
validateNonce_internal()
validateNonce_internal(Defined in: src/primitives/Transaction/validateNonce.ts:8 Validate nonce formatthis):void
Parameters
this
Transactionnonce
bigint
Returns
void
Throws
If nonce is negativevalidateValue()
validateValue(Defined in: src/primitives/Transaction/Transaction.ts:288 Validate value is validtx):void
Parameters
tx
Any
Returns
void
validateValue_internal()
validateValue_internal(Defined in: src/primitives/Transaction/validateValue.ts:8 Validate value is validthis):void
Parameters
this
Transactionvalue
bigint
Returns
void
Throws
If value is negativeverifySignature()
verifySignature(Defined in: src/primitives/Transaction/Transaction.ts:190 Verify transaction signaturetx):boolean
Parameters
tx
Any
Returns
boolean
verifySignature_internal()
verifySignature_internal(Defined in: src/primitives/Transaction/verifySignature.ts:27 Verify transaction signature.this):boolean
Parameters
this
Any
Returns
boolean
True if signature is valid
See
https://voltaire.tevm.sh/primitives/transaction for Transaction documentationSince
0.0.0Throws
If transaction type is unknown or unsupportedExample
withData()
withData(Defined in: src/primitives/Transaction/Transaction.ts:325 Return new transaction with updated datatx,data):Any
Parameters
tx
Any
data
Uint8Array
Returns
Any
withData_internal()
withData_internal(Defined in: src/primitives/Transaction/withData.ts:9 Return new transaction with updated datathis,data):Any
Parameters
this
Any
Transaction
data
Uint8Array
New data value
Returns
Any
New transaction with updated data
withGasLimit()
withGasLimit(Defined in: src/primitives/Transaction/Transaction.ts:311 Return new transaction with updated gas limittx,gasLimit):Any
Parameters
tx
Any
gasLimit
bigint
Returns
Any
withGasLimit_internal()
withGasLimit_internal(Defined in: src/primitives/Transaction/withGasLimit.ts:9 Return new transaction with updated gas limitthis,gasLimit):Any
Parameters
this
Any
Transaction
gasLimit
bigint
New gas limit value
Returns
Any
New transaction with updated gas limit
withGasPrice()
withGasPrice(Defined in: src/primitives/Transaction/Transaction.ts:318 Return new transaction with updated gas pricetx,gasPrice):Any
Parameters
tx
Any
gasPrice
bigint
Returns
Any
withGasPrice_internal()
withGasPrice_internal(Defined in: src/primitives/Transaction/withGasPrice.ts:17 Return new transaction with updated gas price For EIP-1559+ transactions, updates maxFeePerGasthis,gasPrice):Any
Parameters
this
Any
Transaction
gasPrice
bigint
New gas price value
Returns
Any
New transaction with updated gas price
withNonce()
withNonce(Defined in: src/primitives/Transaction/Transaction.ts:304 Return new transaction with updated noncetx,nonce):Any
Parameters
tx
Any
nonce
bigint
Returns
Any
withNonce_internal()
withNonce_internal(Defined in: src/primitives/Transaction/withNonce.ts:9 Return new transaction with updated noncethis,nonce):Any
Parameters
this
Any
Transaction
nonce
bigint
New nonce value
Returns
Any
New transaction with updated nonce
