Expand description
§What to re-export, what to hide?
- export contract struct itself, but try to avoid export instance type (instead, use ::new() to get a handle)
- avoid exporting xxCallandxxReturntypes, they usually can be converted/transmuted from existing struct
- Event types should be exported
- structs should be exported and renamed with xxSolsuffix to avoid confusion with other rust types- see module doc for more explanation on types duplication issue in alloy
 
Generated by the following Solidity interface…
library BN254 {
    type BaseField is uint256;
    struct G1Point {
        BaseField x;
        BaseField y;
    }
    struct G2Point {
        BaseField x0;
        BaseField x1;
        BaseField y0;
        BaseField y1;
    }
}
library EdOnBN254 {
    struct EdOnBN254Point {
        uint256 x;
        uint256 y;
    }
}
interface StakeTable {
    type ValidatorStatus is uint8;
    error AddressEmptyCode(address target);
    error BLSSigVerificationFailed();
    error BN254PairingProdFailed();
    error BlsKeyAlreadyUsed();
    error ERC1967InvalidImplementation(address implementation);
    error ERC1967NonPayable();
    error ExitEscrowPeriodInvalid();
    error FailedInnerCall();
    error InsufficientAllowance(uint256, uint256);
    error InsufficientBalance(uint256);
    error InvalidCommission();
    error InvalidG1();
    error InvalidInitialization();
    error InvalidSchnorrVK();
    error NotInitializing();
    error NothingToWithdraw();
    error OwnableInvalidOwner(address owner);
    error OwnableUnauthorizedAccount(address account);
    error PowPrecompileFailed();
    error PrematureWithdrawal();
    error UUPSUnauthorizedCallContext();
    error UUPSUnsupportedProxiableUUID(bytes32 slot);
    error UndelegationAlreadyExists();
    error ValidatorAlreadyExited();
    error ValidatorAlreadyRegistered();
    error ValidatorInactive();
    error ValidatorNotExited();
    error ZeroAddress();
    error ZeroAmount();
    event ConsensusKeysUpdated(address indexed account, BN254.G2Point blsVK, EdOnBN254.EdOnBN254Point schnorrVK);
    event Delegated(address indexed delegator, address indexed validator, uint256 amount);
    event Initialized(uint64 version);
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    event Undelegated(address indexed delegator, address indexed validator, uint256 amount);
    event Upgraded(address indexed implementation);
    event ValidatorExit(address indexed validator);
    event ValidatorRegistered(address indexed account, BN254.G2Point blsVk, EdOnBN254.EdOnBN254Point schnorrVk, uint16 commission);
    event Withdrawal(address indexed account, uint256 amount);
    constructor();
    function UPGRADE_INTERFACE_VERSION() external view returns (string memory);
    function _hashBlsKey(BN254.G2Point memory blsVK) external pure returns (bytes32);
    function blsKeys(bytes32 blsKeyHash) external view returns (bool used);
    function claimValidatorExit(address validator) external;
    function claimWithdrawal(address validator) external;
    function delegate(address validator, uint256 amount) external;
    function delegations(address validator, address delegator) external view returns (uint256 amount);
    function deregisterValidator() external;
    function exitEscrowPeriod() external view returns (uint256);
    function getVersion() external pure returns (uint8 majorVersion, uint8 minorVersion, uint8 patchVersion);
    function initialize(address _tokenAddress, address _lightClientAddress, uint256 _exitEscrowPeriod, address _timelock) external;
    function initializedAtBlock() external view returns (uint256);
    function lightClient() external view returns (address);
    function owner() external view returns (address);
    function proxiableUUID() external view returns (bytes32);
    function registerValidator(BN254.G2Point memory blsVK, EdOnBN254.EdOnBN254Point memory schnorrVK, BN254.G1Point memory blsSig, uint16 commission) external;
    function renounceOwnership() external;
    function token() external view returns (address);
    function transferOwnership(address newOwner) external;
    function undelegate(address validator, uint256 amount) external;
    function undelegations(address validator, address delegator) external view returns (uint256 amount, uint256 unlocksAt);
    function updateConsensusKeys(BN254.G2Point memory newBlsVK, EdOnBN254.EdOnBN254Point memory newSchnorrVK, BN254.G1Point memory newBlsSig) external;
    function upgradeToAndCall(address newImplementation, bytes memory data) external payable;
    function validatorExits(address validator) external view returns (uint256 unlocksAt);
    function validators(address account) external view returns (uint256 delegatedAmount, ValidatorStatus status);
}…which was generated by the following JSON ABI:
[
  {
    "type": "constructor",
    "inputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "UPGRADE_INTERFACE_VERSION",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "string",
        "internalType": "string"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "_hashBlsKey",
    "inputs": [
      {
        "name": "blsVK",
        "type": "tuple",
        "internalType": "struct BN254.G2Point",
        "components": [
          {
            "name": "x0",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "x1",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y0",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y1",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          }
        ]
      }
    ],
    "outputs": [
      {
        "name": "",
        "type": "bytes32",
        "internalType": "bytes32"
      }
    ],
    "stateMutability": "pure"
  },
  {
    "type": "function",
    "name": "blsKeys",
    "inputs": [
      {
        "name": "blsKeyHash",
        "type": "bytes32",
        "internalType": "bytes32"
      }
    ],
    "outputs": [
      {
        "name": "used",
        "type": "bool",
        "internalType": "bool"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "claimValidatorExit",
    "inputs": [
      {
        "name": "validator",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "claimWithdrawal",
    "inputs": [
      {
        "name": "validator",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "delegate",
    "inputs": [
      {
        "name": "validator",
        "type": "address",
        "internalType": "address"
      },
      {
        "name": "amount",
        "type": "uint256",
        "internalType": "uint256"
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "delegations",
    "inputs": [
      {
        "name": "validator",
        "type": "address",
        "internalType": "address"
      },
      {
        "name": "delegator",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [
      {
        "name": "amount",
        "type": "uint256",
        "internalType": "uint256"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "deregisterValidator",
    "inputs": [],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "exitEscrowPeriod",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "uint256",
        "internalType": "uint256"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "getVersion",
    "inputs": [],
    "outputs": [
      {
        "name": "majorVersion",
        "type": "uint8",
        "internalType": "uint8"
      },
      {
        "name": "minorVersion",
        "type": "uint8",
        "internalType": "uint8"
      },
      {
        "name": "patchVersion",
        "type": "uint8",
        "internalType": "uint8"
      }
    ],
    "stateMutability": "pure"
  },
  {
    "type": "function",
    "name": "initialize",
    "inputs": [
      {
        "name": "_tokenAddress",
        "type": "address",
        "internalType": "address"
      },
      {
        "name": "_lightClientAddress",
        "type": "address",
        "internalType": "address"
      },
      {
        "name": "_exitEscrowPeriod",
        "type": "uint256",
        "internalType": "uint256"
      },
      {
        "name": "_timelock",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "initializedAtBlock",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "uint256",
        "internalType": "uint256"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "lightClient",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "address",
        "internalType": "contract ILightClient"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "owner",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "address",
        "internalType": "address"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "proxiableUUID",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "bytes32",
        "internalType": "bytes32"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "registerValidator",
    "inputs": [
      {
        "name": "blsVK",
        "type": "tuple",
        "internalType": "struct BN254.G2Point",
        "components": [
          {
            "name": "x0",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "x1",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y0",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y1",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          }
        ]
      },
      {
        "name": "schnorrVK",
        "type": "tuple",
        "internalType": "struct EdOnBN254.EdOnBN254Point",
        "components": [
          {
            "name": "x",
            "type": "uint256",
            "internalType": "uint256"
          },
          {
            "name": "y",
            "type": "uint256",
            "internalType": "uint256"
          }
        ]
      },
      {
        "name": "blsSig",
        "type": "tuple",
        "internalType": "struct BN254.G1Point",
        "components": [
          {
            "name": "x",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          }
        ]
      },
      {
        "name": "commission",
        "type": "uint16",
        "internalType": "uint16"
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "renounceOwnership",
    "inputs": [],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "token",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "address",
        "internalType": "contract ERC20"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "transferOwnership",
    "inputs": [
      {
        "name": "newOwner",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "undelegate",
    "inputs": [
      {
        "name": "validator",
        "type": "address",
        "internalType": "address"
      },
      {
        "name": "amount",
        "type": "uint256",
        "internalType": "uint256"
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "undelegations",
    "inputs": [
      {
        "name": "validator",
        "type": "address",
        "internalType": "address"
      },
      {
        "name": "delegator",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [
      {
        "name": "amount",
        "type": "uint256",
        "internalType": "uint256"
      },
      {
        "name": "unlocksAt",
        "type": "uint256",
        "internalType": "uint256"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "updateConsensusKeys",
    "inputs": [
      {
        "name": "newBlsVK",
        "type": "tuple",
        "internalType": "struct BN254.G2Point",
        "components": [
          {
            "name": "x0",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "x1",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y0",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y1",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          }
        ]
      },
      {
        "name": "newSchnorrVK",
        "type": "tuple",
        "internalType": "struct EdOnBN254.EdOnBN254Point",
        "components": [
          {
            "name": "x",
            "type": "uint256",
            "internalType": "uint256"
          },
          {
            "name": "y",
            "type": "uint256",
            "internalType": "uint256"
          }
        ]
      },
      {
        "name": "newBlsSig",
        "type": "tuple",
        "internalType": "struct BN254.G1Point",
        "components": [
          {
            "name": "x",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          }
        ]
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "upgradeToAndCall",
    "inputs": [
      {
        "name": "newImplementation",
        "type": "address",
        "internalType": "address"
      },
      {
        "name": "data",
        "type": "bytes",
        "internalType": "bytes"
      }
    ],
    "outputs": [],
    "stateMutability": "payable"
  },
  {
    "type": "function",
    "name": "validatorExits",
    "inputs": [
      {
        "name": "validator",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [
      {
        "name": "unlocksAt",
        "type": "uint256",
        "internalType": "uint256"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "validators",
    "inputs": [
      {
        "name": "account",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [
      {
        "name": "delegatedAmount",
        "type": "uint256",
        "internalType": "uint256"
      },
      {
        "name": "status",
        "type": "uint8",
        "internalType": "enum StakeTable.ValidatorStatus"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "event",
    "name": "ConsensusKeysUpdated",
    "inputs": [
      {
        "name": "account",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      },
      {
        "name": "blsVK",
        "type": "tuple",
        "indexed": false,
        "internalType": "struct BN254.G2Point",
        "components": [
          {
            "name": "x0",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "x1",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y0",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y1",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          }
        ]
      },
      {
        "name": "schnorrVK",
        "type": "tuple",
        "indexed": false,
        "internalType": "struct EdOnBN254.EdOnBN254Point",
        "components": [
          {
            "name": "x",
            "type": "uint256",
            "internalType": "uint256"
          },
          {
            "name": "y",
            "type": "uint256",
            "internalType": "uint256"
          }
        ]
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "Delegated",
    "inputs": [
      {
        "name": "delegator",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      },
      {
        "name": "validator",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      },
      {
        "name": "amount",
        "type": "uint256",
        "indexed": false,
        "internalType": "uint256"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "Initialized",
    "inputs": [
      {
        "name": "version",
        "type": "uint64",
        "indexed": false,
        "internalType": "uint64"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "OwnershipTransferred",
    "inputs": [
      {
        "name": "previousOwner",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      },
      {
        "name": "newOwner",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "Undelegated",
    "inputs": [
      {
        "name": "delegator",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      },
      {
        "name": "validator",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      },
      {
        "name": "amount",
        "type": "uint256",
        "indexed": false,
        "internalType": "uint256"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "Upgraded",
    "inputs": [
      {
        "name": "implementation",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "ValidatorExit",
    "inputs": [
      {
        "name": "validator",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "ValidatorRegistered",
    "inputs": [
      {
        "name": "account",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      },
      {
        "name": "blsVk",
        "type": "tuple",
        "indexed": false,
        "internalType": "struct BN254.G2Point",
        "components": [
          {
            "name": "x0",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "x1",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y0",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          },
          {
            "name": "y1",
            "type": "uint256",
            "internalType": "BN254.BaseField"
          }
        ]
      },
      {
        "name": "schnorrVk",
        "type": "tuple",
        "indexed": false,
        "internalType": "struct EdOnBN254.EdOnBN254Point",
        "components": [
          {
            "name": "x",
            "type": "uint256",
            "internalType": "uint256"
          },
          {
            "name": "y",
            "type": "uint256",
            "internalType": "uint256"
          }
        ]
      },
      {
        "name": "commission",
        "type": "uint16",
        "indexed": false,
        "internalType": "uint16"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "Withdrawal",
    "inputs": [
      {
        "name": "account",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      },
      {
        "name": "amount",
        "type": "uint256",
        "indexed": false,
        "internalType": "uint256"
      }
    ],
    "anonymous": false
  },
  {
    "type": "error",
    "name": "AddressEmptyCode",
    "inputs": [
      {
        "name": "target",
        "type": "address",
        "internalType": "address"
      }
    ]
  },
  {
    "type": "error",
    "name": "BLSSigVerificationFailed",
    "inputs": []
  },
  {
    "type": "error",
    "name": "BN254PairingProdFailed",
    "inputs": []
  },
  {
    "type": "error",
    "name": "BlsKeyAlreadyUsed",
    "inputs": []
  },
  {
    "type": "error",
    "name": "ERC1967InvalidImplementation",
    "inputs": [
      {
        "name": "implementation",
        "type": "address",
        "internalType": "address"
      }
    ]
  },
  {
    "type": "error",
    "name": "ERC1967NonPayable",
    "inputs": []
  },
  {
    "type": "error",
    "name": "ExitEscrowPeriodInvalid",
    "inputs": []
  },
  {
    "type": "error",
    "name": "FailedInnerCall",
    "inputs": []
  },
  {
    "type": "error",
    "name": "InsufficientAllowance",
    "inputs": [
      {
        "name": "",
        "type": "uint256",
        "internalType": "uint256"
      },
      {
        "name": "",
        "type": "uint256",
        "internalType": "uint256"
      }
    ]
  },
  {
    "type": "error",
    "name": "InsufficientBalance",
    "inputs": [
      {
        "name": "",
        "type": "uint256",
        "internalType": "uint256"
      }
    ]
  },
  {
    "type": "error",
    "name": "InvalidCommission",
    "inputs": []
  },
  {
    "type": "error",
    "name": "InvalidG1",
    "inputs": []
  },
  {
    "type": "error",
    "name": "InvalidInitialization",
    "inputs": []
  },
  {
    "type": "error",
    "name": "InvalidSchnorrVK",
    "inputs": []
  },
  {
    "type": "error",
    "name": "NotInitializing",
    "inputs": []
  },
  {
    "type": "error",
    "name": "NothingToWithdraw",
    "inputs": []
  },
  {
    "type": "error",
    "name": "OwnableInvalidOwner",
    "inputs": [
      {
        "name": "owner",
        "type": "address",
        "internalType": "address"
      }
    ]
  },
  {
    "type": "error",
    "name": "OwnableUnauthorizedAccount",
    "inputs": [
      {
        "name": "account",
        "type": "address",
        "internalType": "address"
      }
    ]
  },
  {
    "type": "error",
    "name": "PowPrecompileFailed",
    "inputs": []
  },
  {
    "type": "error",
    "name": "PrematureWithdrawal",
    "inputs": []
  },
  {
    "type": "error",
    "name": "UUPSUnauthorizedCallContext",
    "inputs": []
  },
  {
    "type": "error",
    "name": "UUPSUnsupportedProxiableUUID",
    "inputs": [
      {
        "name": "slot",
        "type": "bytes32",
        "internalType": "bytes32"
      }
    ]
  },
  {
    "type": "error",
    "name": "UndelegationAlreadyExists",
    "inputs": []
  },
  {
    "type": "error",
    "name": "ValidatorAlreadyExited",
    "inputs": []
  },
  {
    "type": "error",
    "name": "ValidatorAlreadyRegistered",
    "inputs": []
  },
  {
    "type": "error",
    "name": "ValidatorInactive",
    "inputs": []
  },
  {
    "type": "error",
    "name": "ValidatorNotExited",
    "inputs": []
  },
  {
    "type": "error",
    "name": "ZeroAddress",
    "inputs": []
  },
  {
    "type": "error",
    "name": "ZeroAmount",
    "inputs": []
  }
]Structs§
- AddressEmpty Code 
- Custom error with signature AddressEmptyCode(address)and selector0x9996b315.
- BLSSigVerification Failed 
- Custom error with signature BLSSigVerificationFailed()and selector0x0ced3e50.
- BN254Pairing Prod Failed 
- Custom error with signature BN254PairingProdFailed()and selector0xc206334f.
- BlsKeyAlready Used 
- Custom error with signature BlsKeyAlreadyUsed()and selector0x01b514ae.
- ConsensusKeys Updated 
- Event with signature ConsensusKeysUpdated(address,(uint256,uint256,uint256,uint256),(uint256,uint256))and selector0x80d8a4a1663328a998d4555ba21d8bba6ef1576a8c5e9d27f9c545f1a3d52b1d.
- Delegated
- Event with signature Delegated(address,address,uint256)and selector0xe5541a6b6103d4fa7e021ed54fad39c66f27a76bd13d374cf6240ae6bd0bb72b.
- ERC1967Invalid Implementation 
- Custom error with signature ERC1967InvalidImplementation(address)and selector0x4c9c8ce3.
- ERC1967NonPayable 
- Custom error with signature ERC1967NonPayable()and selector0xb398979f.
- ExitEscrow Period Invalid 
- Custom error with signature ExitEscrowPeriodInvalid()and selector0xb57e21df.
- FailedInner Call 
- Custom error with signature FailedInnerCall()and selector0x1425ea42.
- Initialized
- Event with signature Initialized(uint64)and selector0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2.
- InsufficientAllowance 
- Custom error with signature InsufficientAllowance(uint256,uint256)and selector0x2a1b2dd8.
- InsufficientBalance 
- Custom error with signature InsufficientBalance(uint256)and selector0x92665351.
- InvalidCommission 
- Custom error with signature InvalidCommission()and selector0xdc81db85.
- InvalidG1 
- Custom error with signature InvalidG1()and selector0x9e78d14c.
- InvalidInitialization 
- Custom error with signature InvalidInitialization()and selector0xf92ee8a9.
- InvalidSchnorrVK 
- Custom error with signature InvalidSchnorrVK()and selector0x06cf438f.
- NotInitializing
- Custom error with signature NotInitializing()and selector0xd7e6bcf8.
- NothingToWithdraw 
- Custom error with signature NothingToWithdraw()and selector0xd0d04f60.
- OwnableInvalid Owner 
- Custom error with signature OwnableInvalidOwner(address)and selector0x1e4fbdf7.
- OwnableUnauthorized Account 
- Custom error with signature OwnableUnauthorizedAccount(address)and selector0x118cdaa7.
- OwnershipTransferred 
- Event with signature OwnershipTransferred(address,address)and selector0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.
- PowPrecompileFailed 
- Custom error with signature PowPrecompileFailed()and selector0x3274fa64.
- PrematureWithdrawal 
- Custom error with signature PrematureWithdrawal()and selector0x5a774357.
- StakeTable Instance 
- A StakeTableinstance.
- UPGRADE_INTERFACE_ VERSION Call 
- Function with signature UPGRADE_INTERFACE_VERSION()and selector0xad3cb1cc.
- UPGRADE_INTERFACE_ VERSION Return 
- Container type for the return parameters of the UPGRADE_INTERFACE_VERSION()function.
- UUPSUnauthorized Call Context 
- Custom error with signature UUPSUnauthorizedCallContext()and selector0xe07c8dba.
- UUPSUnsupported ProxiableUUID 
- Custom error with signature UUPSUnsupportedProxiableUUID(bytes32)and selector0xaa1d49a4.
- Undelegated
- Event with signature Undelegated(address,address,uint256)and selector0x4d10bd049775c77bd7f255195afba5088028ecb3c7c277d393ccff7934f2f92c.
- UndelegationAlready Exists 
- Custom error with signature UndelegationAlreadyExists()and selector0xd423a4f1.
- Upgraded
- Event with signature Upgraded(address)and selector0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b.
- ValidatorAlready Exited 
- Custom error with signature ValidatorAlreadyExited()and selector0xeab4a963.
- ValidatorAlready Registered 
- Custom error with signature ValidatorAlreadyRegistered()and selector0x9973f7d8.
- ValidatorExit 
- Event with signature ValidatorExit(address)and selector0xfb24305354c87762d557487ae4a564e8d03ecbb9a97dd8afff8e1f6fcaf0dd16.
- ValidatorInactive 
- Custom error with signature ValidatorInactive()and selector0x508a793f.
- ValidatorNotExited 
- Custom error with signature ValidatorNotExited()and selector0xf25314a6.
- ValidatorRegistered 
- Event with signature ValidatorRegistered(address,(uint256,uint256,uint256,uint256),(uint256,uint256),uint16)and selector0xf6e8359c57520b469634736bfc3bb7ec5cbd1a0bd28b10a8275793bb730b797f.
- ValidatorStatus 
- Withdrawal
- Event with signature Withdrawal(address,uint256)and selector0x7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65.
- ZeroAddress 
- Custom error with signature ZeroAddress()and selector0xd92e233d.
- ZeroAmount 
- Custom error with signature ZeroAmount()and selector0x1f2a2005.
- _hashBlsKey Call 
- Function with signature _hashBlsKey((uint256,uint256,uint256,uint256))and selector0x9b30a5e6.
- _hashBlsKey Return 
- Container type for the return parameters of the _hashBlsKey((uint256,uint256,uint256,uint256))function.
- blsKeysCall 
- Function with signature blsKeys(bytes32)and selector0xb3e6ebd5.
- blsKeysReturn 
- Container type for the return parameters of the blsKeys(bytes32)function.
- claimValidator Exit Call 
- Function with signature claimValidatorExit(address)and selector0x2140fecd.
- claimValidator Exit Return 
- Container type for the return parameters of the claimValidatorExit(address)function.
- claimWithdrawal Call 
- Function with signature claimWithdrawal(address)and selector0xa3066aab.
- claimWithdrawal Return 
- Container type for the return parameters of the claimWithdrawal(address)function.
- constructorCall 
- Constructor`.
- delegateCall 
- Function with signature delegate(address,uint256)and selector0x026e402b.
- delegateReturn 
- Container type for the return parameters of the delegate(address,uint256)function.
- delegationsCall 
- Function with signature delegations(address,address)and selector0xc64814dd.
- delegationsReturn 
- Container type for the return parameters of the delegations(address,address)function.
- deregisterValidator Call 
- Function with signature deregisterValidator()and selector0x6a911ccf.
- deregisterValidator Return 
- Container type for the return parameters of the deregisterValidator()function.
- exitEscrow Period Call 
- Function with signature exitEscrowPeriod()and selector0x9e9a8f31.
- exitEscrow Period Return 
- Container type for the return parameters of the exitEscrowPeriod()function.
- getVersionCall 
- Function with signature getVersion()and selector0x0d8e6e2c.
- getVersionReturn 
- Container type for the return parameters of the getVersion()function.
- initializeCall 
- Function with signature initialize(address,address,uint256,address)and selector0xbe203094.
- initializeReturn 
- Container type for the return parameters of the initialize(address,address,uint256,address)function.
- initializedAtBlock Call 
- Function with signature initializedAtBlock()and selector0x3e9df9b5.
- initializedAtBlock Return 
- Container type for the return parameters of the initializedAtBlock()function.
- lightClient Call 
- Function with signature lightClient()and selector0xb5700e68.
- lightClient Return 
- Container type for the return parameters of the lightClient()function.
- ownerCall 
- Function with signature owner()and selector0x8da5cb5b.
- ownerReturn 
- Container type for the return parameters of the owner()function.
- proxiableUUIDCall 
- Function with signature proxiableUUID()and selector0x52d1902d.
- proxiableUUIDReturn 
- Container type for the return parameters of the proxiableUUID()function.
- registerValidator Call 
- Function with signature registerValidator((uint256,uint256,uint256,uint256),(uint256,uint256),(uint256,uint256),uint16)and selector0x13b9057a.
- registerValidator Return 
- Container type for the return parameters of the registerValidator((uint256,uint256,uint256,uint256),(uint256,uint256),(uint256,uint256),uint16)function.
- renounceOwnership Call 
- Function with signature renounceOwnership()and selector0x715018a6.
- renounceOwnership Return 
- Container type for the return parameters of the renounceOwnership()function.
- tokenCall 
- Function with signature token()and selector0xfc0c546a.
- tokenReturn 
- Container type for the return parameters of the token()function.
- transferOwnership Call 
- Function with signature transferOwnership(address)and selector0xf2fde38b.
- transferOwnership Return 
- Container type for the return parameters of the transferOwnership(address)function.
- undelegateCall 
- Function with signature undelegate(address,uint256)and selector0x4d99dd16.
- undelegateReturn 
- Container type for the return parameters of the undelegate(address,uint256)function.
- undelegationsCall 
- Function with signature undelegations(address,address)and selector0xa2d78dd5.
- undelegationsReturn 
- Container type for the return parameters of the undelegations(address,address)function.
- updateConsensus Keys Call 
- Function with signature updateConsensusKeys((uint256,uint256,uint256,uint256),(uint256,uint256),(uint256,uint256))and selector0x5544c2f1.
- updateConsensus Keys Return 
- Container type for the return parameters of the updateConsensusKeys((uint256,uint256,uint256,uint256),(uint256,uint256),(uint256,uint256))function.
- upgradeToAnd Call Call 
- Function with signature upgradeToAndCall(address,bytes)and selector0x4f1ef286.
- upgradeToAnd Call Return 
- Container type for the return parameters of the upgradeToAndCall(address,bytes)function.
- validatorExits Call 
- Function with signature validatorExits(address)and selector0xb5ecb344.
- validatorExits Return 
- Container type for the return parameters of the validatorExits(address)function.
- validatorsCall 
- Function with signature validators(address)and selector0xfa52c7d8.
- validatorsReturn 
- Container type for the return parameters of the validators(address)function.
Enums§
- StakeTable Calls 
- Container for all the StakeTablefunction calls.
- StakeTable Errors 
- Container for all the StakeTablecustom errors.
- StakeTable Events 
- Container for all the StakeTableevents.
Statics§
- BYTECODE
- The creation / init bytecode of the contract.
- DEPLOYED_BYTECODE 
- The runtime bytecode of the contract, as deployed on the network.
Functions§
- deploy
- Deploys this contract using the given providerand constructor arguments, if any.
- deploy_builder 
- Creates a RawCallBuilderfor deploying this contract using the givenproviderand constructor arguments, if any.
- new
- Creates a new wrapper around an on-chain StakeTablecontract instance.