Skip to main content

FuturePass

Pallet Precompile

Use this precompile to interact with the futurepass runtime pallet to create a FuturePass account.

Contract Address

0x000000000000000000000000000000000000FFFF

Solidity Interfaces

interface FuturePassRegistrar {
event FuturepassCreated(address indexed futurepass, address owner);

function futurepassOf(address owner) external view returns (address);
function create(address owner) external returns (address);
}

FuturePass Account

Contract Address

The FuturePass account addresses for The Root Network use the following format:

0xFFFFFFFF[16-byte-futurepass-id]

Solidity Interfaces

interface FuturePass {
event FuturepassDelegateRegistered(address indexed futurepass, address indexed delegate, uint8 proxyType);
event FuturepassDelegateUnregistered(address indexed futurepass, address delegate);
event Executed(uint8 indexed callType, address indexed target, uint256 indexed value, bytes4 data);
event ContractCreated(uint8 indexed callType, address indexed contractAddress, uint256 indexed value, bytes32 salt);

function delegateType(address delegate) external view returns (uint8);

function registerDelegate(address delegate, uint8 proxyType) external;
function unregisterDelegate(address delegate) external;
function proxyCall(uint8 callType, address callTo, uint256 value, bytes memory callData) external payable;
}
interface Ownable is IERC165 {
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

function owner() external view returns (address);
function renounceOwnership() external;
function transferOwnership(address owner) external;
}