Create a FuturePass account for the delegator who is able to make calls on behalf of FuturePass.
The dispatch origin for this call must be Signed.
Parameters:
account
: The delegated account for the FuturePass.
Namespace
Type
This extrinsic migrates EVM-based FuturePass assets to the Substrate-based FuturePass (native).
Parameters:
owner
- The account ID of the owner of the EVM-based FuturePass.
evm_futurepass
- The account ID of the EVM-based FuturePass.
asset_ids
- A vector of asset IDs representing the assets to be migrated.
collection_ids
- A vector of collection IDs representing the NFTs collections to be migrated.
Namespace
Type
Dispatch the given call through FuturePass account. Transaction fees will be paid by the FuturePass. The dispatch origin for this call must be Signed
Parameters:
futurepass
: The FuturePass account through which the call is dispatched
call
: The Call that needs to be dispatched through the FuturePass account
Namespace
Type
Register a delegator to an existing FuturePass account given message parameters for a respective signature.
Note:
Only FuturePass owner account can add more delegates.
The signer is recovered from the signature given the message parameters (which are used to reconstruct the message).
You can assume the message is constructed like so:
--- solidity bytes32 message = keccak256(abi.encodePacked(futurepass, delegate, proxyType, deadline)); ethSignedMessage = keccak256(abi.encodePacked("\x19Ethereum Signed Message:\n32", message));
The dispatch origin for this call must be Signed.
Parameters:
futurepass
: FuturePass account to register the account as delegate; 20 bytes.
delegate
: The delegated account for the futurepass; 20 bytes.
proxy_type
: Delegate permission level; 1 byte.
deadline
: Deadline for the signature; 4 bytes.
signature
: Signature of the message parameters.
Namespace
Type
Update FuturePass native assets migrator admin account.
The dispatch origin for this call must be sudo/root origin.
Parameters:
migrator
: The new account that will become the FuturePass asset migrator.
Namespace
Type
Transfer ownership of a FuturePass to a new account. The new owner must not already own a FuturePass. This removes all delegates from the FuturePass. The new owner will be the only delegate; they can add more delegates.
The dispatch origin for this call must be Signed and must be the current owner of the FuturePass.
Parameters:
current_owner
: The current owner of the FuturePass.
new_owner
: The new account that will become the owner of the FuturePass.
Namespace
Type
Unregister a delegate from a FuturePass account.
The dispatch origin for this call must be Signed.
Parameters:
futurepass
: FuturePass account to unregister the delegate from.
delegate
: The delegated account for the FuturePass.
Note: If the caller is the FuturePass holder (owner), they can remove any delegate, including themselves. However, if the caller is not the owner, they must be the delegate and can only remove themselves.
Namespace
Type
Accounts which have set FuturePass as default proxied on-chain account (delegate -> FuturePass)
Namespace
Type
FuturePass holders (account -> futurepass)
Namespace
Type
Migration data for the user (root) and collections they can migrate
Namespace
Type
The next available incrementing futurepass id
Namespace
Type
FuturePass set as default proxy
Namespace
Type
Delegate registration to FuturePass account
Namespace
Type
Delegate unregistration from FuturePass account
Namespace
Type
Migration of FuturePass assets
Namespace
Type
FuturePass creation
Namespace
Type
Updating FuturePass migrator account
Namespace
Type
FuturePass transfer
Namespace
Type
A proxy call was executed with the given call
Namespace
Type
Account is already FuturePass holder
Namespace
AccountParsingFailure
Namespace
Account already exists as a delegate
Namespace
Account is not FuturePass delegate
Namespace
ExpiredDeadline
Namespace
Invalid deadline
Namespace
Invalid proxy type
Namespace
Invalid signature
Namespace
FuturePass migrator admin account is not set
Namespace
Account is not FuturePass owner
Namespace
FuturePass owner cannot remove themselves
Namespace
Account does not have permission to call this function
Namespace
RegisterDelegateSignerMismatch
Namespace
undefined