TransactionSignRequest class
Unified on-chain transaction-signing request — covers
eth_sendTransaction, solana_signTransaction,
solana_signAndSendTransaction, mpurse_signRawTransaction.
The chain family is on chain; the original RPC method on
method.
The payload carries pre-decoded data so the approval sheet can
render rich content without a follow-up Transaction:simulate
round-trip:
- decodedMethod / decodedArgs — recognised top-level operation ("native_transfer", "erc20_transfer", "erc20_approve", …)
- effects — every transfer / approve at any call depth
- balanceChanges — signed native-balance deltas per address
- warnings — stable-coded advisories (recipient_is_contract, erc20_approve_unlimited, …)
- willRevert / revertReason
- feeAmount / feeDecimals / feeSymbol
- networkName for context
- sizeBytes / raw for the developer view
- chain-specific extras: evmTransaction, solanaUnitsConsumed, solanaLogs, bitcoinInputs, bitcoinOutputs, bitcoinFeeSats
- Inheritance
-
- Object
- PendingRequest
- TransactionSignRequest
Properties
- account → String?
-
Account ID the dApp is signing as, if specified.
finalinherited
-
balanceChanges
→ List<
TxSignBalanceChange> -
Signed native-balance deltas per address.
no setter
- bitcoinFeeSats → int
-
Bitcoin-specific: fee in satoshi (sum(inputs) − sum(outputs)
when input amounts are known; 0 otherwise).
no setter
-
bitcoinInputs
→ List<
TxSignBitcoinIO> -
Bitcoin-specific: decoded inputs.
no setter
-
bitcoinOutputs
→ List<
TxSignBitcoinIO> -
Bitcoin-specific: decoded outputs.
no setter
- chain → String
-
"evm"/"solana"/"bitcoin".no setter - created → DateTime?
-
Timestamp when the request was created.
finalinherited
-
decodedArgs
→ Map<
String, dynamic> -
Method-specific arguments (
{to, amount, ...}).no setter - decodedMethod → String
-
Recognised top-level operation:
"native_transfer"|"erc20_transfer"|"erc20_approve"|"spl_transfer"|"bitcoin_transfer"|"unknown"|""(no decoder ran).no setter -
effects
→ List<
TxSignEffect> -
Every transfer / approve effect this tx will cause, at any
call depth. Empty when the chain has no decoder.
no setter
- evmTransaction → Transaction?
-
EVM-specific: full Transaction record (gas, nonce, data, etc.).
Null on non-EVM chains.
no setter
- feeAmount → String
-
Fee amount as a decimal-string in base units. Pair with
feeDecimals + feeSymbol for display.
no setter
- feeDecimals → int
-
Decimals for feeAmount (18 for ETH, 9 for SOL, 8 for BTC).
no setter
- feeSymbol → String
-
Native currency symbol for the fee.
no setter
- from → String
-
Signer's address in the chain's native format.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- host → String
-
Hostname of the dApp that initiated the request.
finalinherited
- id → String
-
Unique request identifier.
finalinherited
- isAccepted → bool
-
no setterinherited
- isPending → bool
-
no setterinherited
- isRejected → bool
-
no setterinherited
- isTimedOut → bool
-
no setterinherited
- method → String
-
The original RPC method that triggered the prompt
(
"eth_sendTransaction","solana_signTransaction", …).no setter - network → Network?
-
Network info for context (name, currency, etc.). Null if
the payload is malformed.
no setter
- networkId → String
-
Network identifier (
"<type>.<chainId>").no setter - networkName → String
-
Network display name.
no setter
- raw → String
-
Raw tx — hex on EVM/Bitcoin, base64 on Solana. For dev-mode
"see raw" panels.
no setter
- rawValue → dynamic
-
Raw value payload as delivered by Go. Kept untyped on the base class
because each request type has its own shape; concrete subtypes expose
typed accessors. Consumers generally don't need to touch this.
finalinherited
- result → dynamic
-
Result payload once the request has been approved (e.g. signature,
tx hash). Null while pending. Shape depends on the request type;
subtypes may expose typed getters.
finalinherited
- resultHash → String?
-
Result hash / signature once the request has been approved.
Shape depends on method; see the result-getter helpers below
or fall back to the raw result field.
no setter
- revertReason → String
-
Human-readable revert reason, when willRevert is true.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- sizeBytes → int
-
Approximate serialized tx size in bytes.
no setter
-
solanaLogs
→ List<
String> -
Solana-specific: program log lines from simulateTransaction.
no setter
- solanaUnitsConsumed → int
-
Solana-specific: simulated compute-unit cost (0 when not run).
no setter
- status → String
-
Current status:
pending,accepted,rejected, ortimedout.finalinherited - transaction → Transaction?
-
EVM transaction attached to the request, if this is a
sign-type request representingeth_sendTransaction. Null for other types.finalinherited - type → String
-
Wire-level type discriminator (e.g.
connect,personal_sign,solana_sign_transaction). Exposed for logging / telemetry; for behaviour, pattern-match on the subtype instead.no setteroverride - updated → DateTime?
-
Timestamp when the request was last updated.
finalinherited
-
warnings
→ List<
TxSignWarning> -
Advisories the approval sheet should surface.
no setter
- willRevert → bool
-
True when simulate predicts the tx will revert / fail.
no setter
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited