SigningInput class

Input data necessary to create a signed transaction. Legacy and EIP2718/EIP1559 transactions supported, see TransactionMode.

Inheritance
  • Object
  • GeneratedMessage
  • SigningInput
Available extensions

Constructors

SigningInput({List<int>? chainId, List<int>? nonce, TransactionMode? txMode, List<int>? gasPrice, List<int>? gasLimit, List<int>? maxInclusionFeePerGas, List<int>? maxFeePerGas, String? toAddress, List<int>? privateKey, Transaction? transaction, UserOperation? userOperation, Iterable<Access>? accessList, UserOperationV0_7? userOperationV07, Authorization? eip7702Authorization})
factory
SigningInput.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY])
factory
SigningInput.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY])
factory

Properties

accessList List<Access>
Optional list of addresses and storage keys that the transaction plans to access. Used in TransactionMode::Enveloped only.
no setter
chainId List<int>
Chain identifier (uint256, serialized big endian)
getter/setter pair
eip7702Authorization Authorization
EIP7702 authorization. Used in TransactionMode::SetOp or TransactionMode::UserOp. Currently, we support delegation to only one authority at a time.
getter/setter pair
eventPlugin → EventPlugin?
Subclasses can override this getter to be notified of changes to protobuf fields.
no setterinherited
gasLimit List<int>
Gas limit (uint256, serialized big endian)
getter/setter pair
gasPrice List<int>
Gas price (uint256, serialized big endian) Relevant for legacy transactions only (disregarded for enveloped/EIP1559)
getter/setter pair
hashCode int
Calculates a hash code based on the contents of the protobuf.
no setterinherited
info_ → BuilderInfo
no setteroverride
isFrozen bool
Returns true if this message is marked read-only. Otherwise false.
no setterinherited
maxFeePerGas List<int>
Maximum fee (uint256, serialized big endian) Relevant for enveloped/EIP1559 transactions only, tx_mode=Enveloped, (disregarded for legacy)
getter/setter pair
maxInclusionFeePerGas List<int>
Maximum optional inclusion fee (aka tip) (uint256, serialized big endian) Relevant for enveloped/EIP1559 transactions only, tx_mode=Enveloped, (disregarded for legacy)
getter/setter pair
nonce List<int>
Nonce (uint256, serialized big endian)
getter/setter pair
privateKey List<int>
The secret private key used for signing (32 bytes).
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
toAddress String
Recipient's address. TODO currently, will be moved to each Transaction oneof soon.
getter/setter pair
transaction Transaction
The payload transaction
getter/setter pair
txMode TransactionMode
Transaction version selector: Legacy or enveloped, has impact on fee structure. Default is Legacy (value 0)
getter/setter pair
unknownFields → UnknownFieldSet
no setterinherited
userOperation UserOperation
getter/setter pair
userOperationV07 UserOperationV0_7
EIP-7702 compatible
getter/setter pair

Methods

addExtension(Extension extension, Object? value) → void
Adds an extension field value to a repeated field.
inherited
anyCompileWithSignatures({required TWCoinType coin, required List<Uint8List> signatures, required List<Uint8List> publicKeys, TWPublicKeyType? pubKeyType}) Uint8List

Available on GeneratedMessage, provided by the TWPreImageHashesExtension extension

Compiles a complete transation with one or more external signatures. \param coin coin type. \param signatures signatures to compile. \param publicKeys public keys for signers to match private keys. \param pubKeyType public key type. \return serialized data of a proto object SigningOutput.
anyCompileWithSignaturesToOutput<T extends GeneratedMessage>({required TWCoinType coin, required List<Uint8List> signatures, required List<Uint8List> publicKeys, TWPublicKeyType? pubKeyType, required T output}) → T

Available on GeneratedMessage, provided by the TWPreImageHashesExtension extension

Compiles a complete transation with one or more external signatures. \param coin coin type. \param signatures signatures to compile. \param publicKeys public keys for signers to match private keys. \param publicKeys public keys for signers to match private keys. \param pubKeyType public key type. \param output Empty SigningOutput proto object. \return output after serialization data is filled.
anyPlan(TWCoinType coin) Uint8List

Available on GeneratedMessage, provided by the TWAnySignExtension extension

Any plan. \param coin coin type. \return The serialized data of a TransactionPlan proto object.
anyPlanToOutput<T extends GeneratedMessage>(TWCoinType coin, T output) → T

Available on GeneratedMessage, provided by the TWAnySignExtension extension

Any plan to output. \param coin coin type. \param output Empty TransactionPlan proto object. \return output after serialization data is filled.
anyPreImageHashes(TWCoinType coin) Uint8List

Available on GeneratedMessage, provided by the TWPreImageHashesExtension extension

Obtain pre-signing hashes of a transaction. \param coin coin type. \return serialized data of a proto object PreSigningOutput includes hash.
anyPreImageHashesToOutput<T extends GeneratedMessage>(TWCoinType coin, T output) → T

Available on GeneratedMessage, provided by the TWPreImageHashesExtension extension

Obtain pre-signing hashes of a transaction. \param coin coin type. \param output Empty PreSigningOutput proto object. \return output after serialization data is filled.
anySign(TWCoinType coin) Uint8List

Available on GeneratedMessage, provided by the TWAnySignExtension extension

Any sign. \param coin The given coin type to sign the transaction for. \return The serialized data of a SigningOutput proto object. (e.g. TW.Bitcoin.Proto.SigningOutput).
anySignToOutput<T extends GeneratedMessage>(TWCoinType coin, T output) → T

Available on GeneratedMessage, provided by the TWAnySignExtension extension

Any sign to output. \param coin coin type. \param output Empty SigningOutput proto object. (e.g. TW.Bitcoin.Proto.SigningOutput). \return output after serialization data is filled.
check() → void
inherited
clear() → void
Clears all data that was set in this message.
inherited
clearChainId() → void
clearEip7702Authorization() → void
clearExtension(Extension extension) → void
Clears an extension field and also removes the extension.
inherited
clearField(int tagNumber) → void
Clears the contents of a given field.
inherited
clearGasLimit() → void
clearGasPrice() → void
clearMaxFeePerGas() → void
clearMaxInclusionFeePerGas() → void
clearNonce() → void
clearPrivateKey() → void
clearToAddress() → void
clearTransaction() → void
clearTxMode() → void
clearUserOperation() → void
clearUserOperationOneof() → void
clearUserOperationV07() → void
clone() SigningInput
Creates a deep copy of the fields in this message. (The generated code uses mergeFromMessage.)
override
compileWithSignatures({TWCoinType coin = TWCoinType.Ethereum, required List<Uint8List> signatures, List<Uint8List> publicKeys = const [], TWPublicKeyType? pubKeyType}) SigningOutput

Available on SigningInput, provided by the TWEthereumExtension extension

Compiles a complete transation with one or more external signatures. \param coin coin type. \param signatures signatures to compile. \param publicKeys public keys for signers to match private keys. \param publicKeys public keys for signers to match private keys. \param pubKeyType public key type. \return Ethereum SigningOutput proto object.
copyWith(void updates(SigningInput)) SigningInput
Apply updates to a copy of this message.
override
createEmptyInstance() SigningInput
Creates an empty instance of the same message type as this.
override
createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) Map<K, V>
Creates a Map representing a map field.
inherited
createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) List<T>
Creates List implementing a mutable repeated field.
inherited
ensureEip7702Authorization() Authorization
ensureTransaction() Transaction
ensureUserOperation() UserOperation
ensureUserOperationV07() UserOperationV0_7
extensionsAreInitialized() bool
inherited
freeze() → GeneratedMessage
Make this message read-only.
inherited
getDefaultForField(int tagNumber) → dynamic
Returns the default value for the given field.
inherited
getExtension(Extension extension) → dynamic
Returns the value of extension.
inherited
getField(int tagNumber) → dynamic
Returns the value of the field associated with tagNumber, or the default value if it is not set.
inherited
getFieldOrNull(int tagNumber) → dynamic
Returns the value of a field, ignoring any defaults.
inherited
getTagNumber(String fieldName) int?
inherited
hasChainId() bool
hasEip7702Authorization() bool
hasExtension(Extension extension) bool
Returns true if a value of extension is present.
inherited
hasField(int tagNumber) bool
Whether this message has a field associated with tagNumber.
inherited
hasGasLimit() bool
hasGasPrice() bool
hasMaxFeePerGas() bool
hasMaxInclusionFeePerGas() bool
hasNonce() bool
hasPrivateKey() bool
hasRequiredFields() bool
Whether the message has required fields.
inherited
hasToAddress() bool
hasTransaction() bool
hasTxMode() bool
hasUserOperation() bool
hasUserOperationV07() bool
isInitialized() bool
Whether all required fields in the message and embedded messages are set.
inherited
mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges serialized protocol buffer data into this message.
inherited
mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
inherited
mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges field values from data, a JSON object, encoded as described by GeneratedMessage.writeToJson.
inherited
mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges field values from a JSON object represented as a Dart map.
inherited
mergeFromMessage(GeneratedMessage other) → void
Merges the contents of the other into this message.
inherited
mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) → void
Merges field values from json, a JSON object using proto3 encoding.
inherited
mergeUnknownFields(UnknownFieldSet unknownFieldSet) → void
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
preImageHashes([TWCoinType coin = TWCoinType.Ethereum]) PreSigningOutput

Available on SigningInput, provided by the TWEthereumExtension extension

Obtain pre-signing hashes of a transaction. \param coin coin type \return TransactionCompiler PreSigningOutput proto object.
setExtension(Extension extension, Object value) → void
Sets the value of a non-repeated extension field to value.
inherited
setField(int tagNumber, Object value) → void
Sets the value of a field by its tagNumber.
inherited
sign([TWCoinType coin = TWCoinType.Ethereum]) SigningOutput

Available on SigningInput, provided by the TWEthereumExtension extension

Sign \param coin coin type \return Ethereum SigningOutput proto object.
toBuilder() → GeneratedMessage
Creates a writable, shallow copy of this message.
inherited
toDebugString() String
Returns a String representation of this message.
inherited
toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) Object?
Returns an Object representing Proto3 JSON serialization of this.
inherited
toString() String
Returns a String representation of this message.
inherited
whichUserOperationOneof() SigningInput_UserOperationOneof
writeToBuffer() Uint8List
inherited
writeToCodedBufferWriter(CodedBufferWriter output) → void
inherited
writeToJson() String
Returns a JSON string that encodes this message.
inherited
writeToJsonMap() Map<String, dynamic>
Returns the JSON encoding of this message as a Dart Map.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

create() SigningInput
createRepeated() → PbList<SigningInput>
getDefault() SigningInput