MultisigStorage class
Represents the on-chain storage state of a multisig transaction
This class decodes and manages the storage data for pending multisig transactions. It helps check approval status before submitting transactions to avoid wasting gas fees.
Example:
// Fetch storage for a pending transaction
final storage = await MultisigStorage.fetch(
provider: provider,
multisigAddress: signatories.multisigAddress,
callHash: callHash,
registry: chainInfo.registry,
);
if (storage == null) {
print('No pending transaction found');
} else if (storage.hasApproved(alice.address)) {
print('Alice already approved');
} else {
print('Alice can approve');
}
Properties
-
approvals
→ List<
Uint8List> -
The raw approval bytes for comparison
final
- deposit → BigInt
-
Amount deposited for storage (refunded on execution/cancel)
final
- depositor → Uint8List
-
Address of who initiated the transaction (gets deposit back)
final
- hashCode → int
-
The hash code for this object.
no setterinherited
-
props
→ List<
Object> -
The list of properties that will be used to determine whether
two instances are equal.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- stringify → bool?
-
If set to
true, thetoStringmethod will be overridden to output this instance'sprops.no setterinherited - when → TimePoint
-
When the multisig transaction was initiated
final
Methods
-
getStatus(
{required int threshold, String? signerAddress}) → MultisigStorageStatus - Create storage status summary
-
hasApproved(
String address) → bool - Check if an address has already approved
-
isComplete(
int threshold) → bool - Check if already fully approved
-
isDepositor(
String address) → bool - Check if this is the depositor (transaction initiator)
-
isFinalApproval(
int threshold) → bool - Check if this would be the final approval
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
progress(
int threshold) → ({int current, int requiredApprovals}) - Get approval progress
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited