Module EthBridgeCommittee

Source
Expand description

Generated by the following Solidity interface…

library BridgeUtils {
    struct Message {
        uint8 messageType;
        uint8 version;
        uint64 nonce;
        uint8 chainID;
        bytes payload;
    }
}

interface EthBridgeCommittee {
    error AddressEmptyCode(address target);
    error ERC1967InvalidImplementation(address implementation);
    error ERC1967NonPayable();
    error FailedInnerCall();
    error InvalidInitialization();
    error NotInitializing();
    error ReentrancyGuardReentrantCall();
    error UUPSUnauthorizedCallContext();
    error UUPSUnsupportedProxiableUUID(bytes32 slot);

    event BlocklistUpdated(address[] updatedMembers, bool isBlocklisted);
    event BlocklistUpdatedV2(uint64 nonce, address[] updatedMembers, bool isBlocklisted);
    event ContractUpgraded(uint256 nonce, address proxy, address implementation);
    event Initialized(uint64 version);
    event Upgraded(address indexed implementation);

    function UPGRADE_INTERFACE_VERSION() external view returns (string memory);
    function blocklist(address committeeMember) external view returns (bool isBlocklisted);
    function committee() external view returns (address);
    function committeeIndex(address committeeMember) external view returns (uint8 index);
    function committeeStake(address committeeMember) external view returns (uint16 stakeAmount);
    function config() external view returns (address);
    function initialize(address[] memory committee, uint16[] memory stake, uint16 minStakeRequired) external;
    function initializeConfig(address _config) external;
    function nonces(uint8 messageType) external view returns (uint64 nonce);
    function proxiableUUID() external view returns (bytes32);
    function updateBlocklistWithSignatures(bytes[] memory signatures, BridgeUtils.Message memory message) external;
    function upgradeToAndCall(address newImplementation, bytes memory data) external payable;
    function upgradeWithSignatures(bytes[] memory signatures, BridgeUtils.Message memory message) external;
    function verifySignatures(bytes[] memory signatures, BridgeUtils.Message memory message) external view;
}

…which was generated by the following JSON ABI:

[
  {
    "type": "function",
    "name": "UPGRADE_INTERFACE_VERSION",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "string",
        "internalType": "string"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "blocklist",
    "inputs": [
      {
        "name": "committeeMember",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [
      {
        "name": "isBlocklisted",
        "type": "bool",
        "internalType": "bool"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "committee",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "address",
        "internalType": "contract IBridgeCommittee"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "committeeIndex",
    "inputs": [
      {
        "name": "committeeMember",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [
      {
        "name": "index",
        "type": "uint8",
        "internalType": "uint8"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "committeeStake",
    "inputs": [
      {
        "name": "committeeMember",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [
      {
        "name": "stakeAmount",
        "type": "uint16",
        "internalType": "uint16"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "config",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "address",
        "internalType": "contract IBridgeConfig"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "initialize",
    "inputs": [
      {
        "name": "committee",
        "type": "address[]",
        "internalType": "address[]"
      },
      {
        "name": "stake",
        "type": "uint16[]",
        "internalType": "uint16[]"
      },
      {
        "name": "minStakeRequired",
        "type": "uint16",
        "internalType": "uint16"
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "initializeConfig",
    "inputs": [
      {
        "name": "_config",
        "type": "address",
        "internalType": "address"
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "nonces",
    "inputs": [
      {
        "name": "messageType",
        "type": "uint8",
        "internalType": "uint8"
      }
    ],
    "outputs": [
      {
        "name": "nonce",
        "type": "uint64",
        "internalType": "uint64"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "proxiableUUID",
    "inputs": [],
    "outputs": [
      {
        "name": "",
        "type": "bytes32",
        "internalType": "bytes32"
      }
    ],
    "stateMutability": "view"
  },
  {
    "type": "function",
    "name": "updateBlocklistWithSignatures",
    "inputs": [
      {
        "name": "signatures",
        "type": "bytes[]",
        "internalType": "bytes[]"
      },
      {
        "name": "message",
        "type": "tuple",
        "internalType": "struct BridgeUtils.Message",
        "components": [
          {
            "name": "messageType",
            "type": "uint8",
            "internalType": "uint8"
          },
          {
            "name": "version",
            "type": "uint8",
            "internalType": "uint8"
          },
          {
            "name": "nonce",
            "type": "uint64",
            "internalType": "uint64"
          },
          {
            "name": "chainID",
            "type": "uint8",
            "internalType": "uint8"
          },
          {
            "name": "payload",
            "type": "bytes",
            "internalType": "bytes"
          }
        ]
      }
    ],
    "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": "upgradeWithSignatures",
    "inputs": [
      {
        "name": "signatures",
        "type": "bytes[]",
        "internalType": "bytes[]"
      },
      {
        "name": "message",
        "type": "tuple",
        "internalType": "struct BridgeUtils.Message",
        "components": [
          {
            "name": "messageType",
            "type": "uint8",
            "internalType": "uint8"
          },
          {
            "name": "version",
            "type": "uint8",
            "internalType": "uint8"
          },
          {
            "name": "nonce",
            "type": "uint64",
            "internalType": "uint64"
          },
          {
            "name": "chainID",
            "type": "uint8",
            "internalType": "uint8"
          },
          {
            "name": "payload",
            "type": "bytes",
            "internalType": "bytes"
          }
        ]
      }
    ],
    "outputs": [],
    "stateMutability": "nonpayable"
  },
  {
    "type": "function",
    "name": "verifySignatures",
    "inputs": [
      {
        "name": "signatures",
        "type": "bytes[]",
        "internalType": "bytes[]"
      },
      {
        "name": "message",
        "type": "tuple",
        "internalType": "struct BridgeUtils.Message",
        "components": [
          {
            "name": "messageType",
            "type": "uint8",
            "internalType": "uint8"
          },
          {
            "name": "version",
            "type": "uint8",
            "internalType": "uint8"
          },
          {
            "name": "nonce",
            "type": "uint64",
            "internalType": "uint64"
          },
          {
            "name": "chainID",
            "type": "uint8",
            "internalType": "uint8"
          },
          {
            "name": "payload",
            "type": "bytes",
            "internalType": "bytes"
          }
        ]
      }
    ],
    "outputs": [],
    "stateMutability": "view"
  },
  {
    "type": "event",
    "name": "BlocklistUpdated",
    "inputs": [
      {
        "name": "updatedMembers",
        "type": "address[]",
        "indexed": false,
        "internalType": "address[]"
      },
      {
        "name": "isBlocklisted",
        "type": "bool",
        "indexed": false,
        "internalType": "bool"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "BlocklistUpdatedV2",
    "inputs": [
      {
        "name": "nonce",
        "type": "uint64",
        "indexed": false,
        "internalType": "uint64"
      },
      {
        "name": "updatedMembers",
        "type": "address[]",
        "indexed": false,
        "internalType": "address[]"
      },
      {
        "name": "isBlocklisted",
        "type": "bool",
        "indexed": false,
        "internalType": "bool"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "ContractUpgraded",
    "inputs": [
      {
        "name": "nonce",
        "type": "uint256",
        "indexed": false,
        "internalType": "uint256"
      },
      {
        "name": "proxy",
        "type": "address",
        "indexed": false,
        "internalType": "address"
      },
      {
        "name": "implementation",
        "type": "address",
        "indexed": false,
        "internalType": "address"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "Initialized",
    "inputs": [
      {
        "name": "version",
        "type": "uint64",
        "indexed": false,
        "internalType": "uint64"
      }
    ],
    "anonymous": false
  },
  {
    "type": "event",
    "name": "Upgraded",
    "inputs": [
      {
        "name": "implementation",
        "type": "address",
        "indexed": true,
        "internalType": "address"
      }
    ],
    "anonymous": false
  },
  {
    "type": "error",
    "name": "AddressEmptyCode",
    "inputs": [
      {
        "name": "target",
        "type": "address",
        "internalType": "address"
      }
    ]
  },
  {
    "type": "error",
    "name": "ERC1967InvalidImplementation",
    "inputs": [
      {
        "name": "implementation",
        "type": "address",
        "internalType": "address"
      }
    ]
  },
  {
    "type": "error",
    "name": "ERC1967NonPayable",
    "inputs": []
  },
  {
    "type": "error",
    "name": "FailedInnerCall",
    "inputs": []
  },
  {
    "type": "error",
    "name": "InvalidInitialization",
    "inputs": []
  },
  {
    "type": "error",
    "name": "NotInitializing",
    "inputs": []
  },
  {
    "type": "error",
    "name": "ReentrancyGuardReentrantCall",
    "inputs": []
  },
  {
    "type": "error",
    "name": "UUPSUnauthorizedCallContext",
    "inputs": []
  },
  {
    "type": "error",
    "name": "UUPSUnsupportedProxiableUUID",
    "inputs": [
      {
        "name": "slot",
        "type": "bytes32",
        "internalType": "bytes32"
      }
    ]
  }
]

Structs§

AddressEmptyCode
Custom error with signature AddressEmptyCode(address) and selector 0x9996b315.
BlocklistUpdated
Event with signature BlocklistUpdated(address[],bool) and selector 0x22a2e525910eeb1577657a78bc70deeffc0d24e756d63718b502b1a9b99769de.
BlocklistUpdatedV2
Event with signature BlocklistUpdatedV2(uint64,address[],bool) and selector 0x1a1b35eeb36118431e57f7a5ff9c4718f99197beb1f65fada60b6e46af6656ba.
ContractUpgraded
Event with signature ContractUpgraded(uint256,address,address) and selector 0xdc69b57038334451ee12fd1742228917cea7f40dbd33cda5162e7e5754acee1c.
ERC1967InvalidImplementation
Custom error with signature ERC1967InvalidImplementation(address) and selector 0x4c9c8ce3.
ERC1967NonPayable
Custom error with signature ERC1967NonPayable() and selector 0xb398979f.
EthBridgeCommitteeInstance
A EthBridgeCommittee instance.
FailedInnerCall
Custom error with signature FailedInnerCall() and selector 0x1425ea42.
Initialized
Event with signature Initialized(uint64) and selector 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2.
InvalidInitialization
Custom error with signature InvalidInitialization() and selector 0xf92ee8a9.
NotInitializing
Custom error with signature NotInitializing() and selector 0xd7e6bcf8.
ReentrancyGuardReentrantCall
Custom error with signature ReentrancyGuardReentrantCall() and selector 0x3ee5aeb5.
UPGRADE_INTERFACE_VERSIONCall
Function with signature UPGRADE_INTERFACE_VERSION() and selector 0xad3cb1cc.
UPGRADE_INTERFACE_VERSIONReturn
Container type for the return parameters of the UPGRADE_INTERFACE_VERSION() function.
UUPSUnauthorizedCallContext
Custom error with signature UUPSUnauthorizedCallContext() and selector 0xe07c8dba.
UUPSUnsupportedProxiableUUID
Custom error with signature UUPSUnsupportedProxiableUUID(bytes32) and selector 0xaa1d49a4.
Upgraded
Event with signature Upgraded(address) and selector 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b.
blocklistCall
Function with signature blocklist(address) and selector 0xe5c7160b.
blocklistReturn
Container type for the return parameters of the blocklist(address) function.
committeeCall
Function with signature committee() and selector 0xd864e740.
committeeIndexCall
Function with signature committeeIndex(address) and selector 0x46b01d38.
committeeIndexReturn
Container type for the return parameters of the committeeIndex(address) function.
committeeReturn
Container type for the return parameters of the committee() function.
committeeStakeCall
Function with signature committeeStake(address) and selector 0x5b1adbef.
committeeStakeReturn
Container type for the return parameters of the committeeStake(address) function.
configCall
Function with signature config() and selector 0x79502c55.
configReturn
Container type for the return parameters of the config() function.
initializeCall
Function with signature initialize(address[],uint16[],uint16) and selector 0x409ac647.
initializeConfigCall
Function with signature initializeConfig(address) and selector 0xc8f55287.
initializeConfigReturn
Container type for the return parameters of the initializeConfig(address) function.
initializeReturn
Container type for the return parameters of the initialize(address[],uint16[],uint16) function.
noncesCall
Function with signature nonces(uint8) and selector 0x5035bda2.
noncesReturn
Container type for the return parameters of the nonces(uint8) function.
proxiableUUIDCall
Function with signature proxiableUUID() and selector 0x52d1902d.
proxiableUUIDReturn
Container type for the return parameters of the proxiableUUID() function.
updateBlocklistWithSignaturesCall
Function with signature updateBlocklistWithSignatures(bytes[],(uint8,uint8,uint64,uint8,bytes)) and selector 0xf6f66e98.
updateBlocklistWithSignaturesReturn
Container type for the return parameters of the updateBlocklistWithSignatures(bytes[],(uint8,uint8,uint64,uint8,bytes)) function.
upgradeToAndCallCall
Function with signature upgradeToAndCall(address,bytes) and selector 0x4f1ef286.
upgradeToAndCallReturn
Container type for the return parameters of the upgradeToAndCall(address,bytes) function.
upgradeWithSignaturesCall
Function with signature upgradeWithSignatures(bytes[],(uint8,uint8,uint64,uint8,bytes)) and selector 0xfa72a6d0.
upgradeWithSignaturesReturn
Container type for the return parameters of the upgradeWithSignatures(bytes[],(uint8,uint8,uint64,uint8,bytes)) function.
verifySignaturesCall
Function with signature verifySignatures(bytes[],(uint8,uint8,uint64,uint8,bytes)) and selector 0xf188949c.
verifySignaturesReturn
Container type for the return parameters of the verifySignatures(bytes[],(uint8,uint8,uint64,uint8,bytes)) function.

Enums§

EthBridgeCommitteeCalls
Container for all the EthBridgeCommittee function calls.
EthBridgeCommitteeErrors
Container for all the EthBridgeCommittee custom errors.
EthBridgeCommitteeEvents
Container for all the EthBridgeCommittee events.

Functions§

new
Creates a new wrapper around an on-chain EthBridgeCommittee contract instance.