Expand description
Generated by the following Solidity interface…
interface HoprNetworkRegistry {
error ArrayLengthNotMatch();
error CannotOperateForNode(address nodeAddress);
error GloballyDisabledRegistry();
error GloballyEnabledRegistry();
error NodeAlreadyRegisterd(address nodeAddress);
error NodeNotYetRegisterd(address nodeAddress);
error NodeRegisterdToOtherAccount(address nodeAddress);
error NotEnoughAllowanceToRegisterNode();
event Deregistered(address indexed stakingAccount, address indexed nodeAddress);
event DeregisteredByManager(address indexed stakingAccount, address indexed nodeAddress);
event EligibilityUpdated(address indexed stakingAccount, bool indexed eligibility);
event NetworkRegistryStatusUpdated(bool indexed isEnabled);
event Registered(address indexed stakingAccount, address indexed nodeAddress);
event RegisteredByManager(address indexed stakingAccount, address indexed nodeAddress);
event RequirementUpdated(address indexed requirementImplementation);
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole);
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender);
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender);
constructor(address _requirementImplementation, address _newOwner, address _manager);
function DEFAULT_ADMIN_ROLE() external view returns (bytes32);
function MANAGER_ROLE() external view returns (bytes32);
function countRegisterdNodesPerAccount(address) external view returns (uint256);
function disableRegistry() external;
function enableRegistry() external;
function enabled() external view returns (bool);
function getRoleAdmin(bytes32 role) external view returns (bytes32);
function getRoleMember(bytes32 role, uint256 index) external view returns (address);
function getRoleMemberCount(bytes32 role) external view returns (uint256);
function grantRole(bytes32 role, address account) external;
function hasRole(bytes32 role, address account) external view returns (bool);
function isAccountEligible(address stakingAccount) external view returns (bool);
function isNodeRegisteredAndEligible(address nodeAddress) external view returns (bool);
function isNodeRegisteredByAccount(address nodeAddress, address account) external view returns (bool);
function managerDeregister(address[] memory nodeAddresses) external;
function managerForceSync(address[] memory stakingAccounts, bool[] memory eligibilities) external;
function managerRegister(address[] memory stakingAccounts, address[] memory nodeAddresses) external;
function managerSync(address[] memory stakingAccounts) external;
function maxAdditionalRegistrations(address stakingAccount) external view returns (uint256);
function nodeRegisterdToAccount(address) external view returns (address);
function renounceRole(bytes32 role, address account) external;
function requirementImplementation() external view returns (address);
function revokeRole(bytes32 role, address account) external;
function selfDeregister(address[] memory nodeAddresses) external;
function selfRegister(address[] memory nodeAddresses) external;
function selfSync() external;
function supportsInterface(bytes4 interfaceId) external view returns (bool);
function updateRequirementImplementation(address _requirementImplementation) external;
}…which was generated by the following JSON ABI:
[
{
"type": "constructor",
"inputs": [
{
"name": "_requirementImplementation",
"type": "address",
"internalType": "address"
},
{
"name": "_newOwner",
"type": "address",
"internalType": "address"
},
{
"name": "_manager",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "DEFAULT_ADMIN_ROLE",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "MANAGER_ROLE",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "countRegisterdNodesPerAccount",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "disableRegistry",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "enableRegistry",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "enabled",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "getRoleAdmin",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
}
],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "getRoleMember",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "index",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "getRoleMemberCount",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "grantRole",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "hasRole",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "isAccountEligible",
"inputs": [
{
"name": "stakingAccount",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "isNodeRegisteredAndEligible",
"inputs": [
{
"name": "nodeAddress",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "isNodeRegisteredByAccount",
"inputs": [
{
"name": "nodeAddress",
"type": "address",
"internalType": "address"
},
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "managerDeregister",
"inputs": [
{
"name": "nodeAddresses",
"type": "address[]",
"internalType": "address[]"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "managerForceSync",
"inputs": [
{
"name": "stakingAccounts",
"type": "address[]",
"internalType": "address[]"
},
{
"name": "eligibilities",
"type": "bool[]",
"internalType": "bool[]"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "managerRegister",
"inputs": [
{
"name": "stakingAccounts",
"type": "address[]",
"internalType": "address[]"
},
{
"name": "nodeAddresses",
"type": "address[]",
"internalType": "address[]"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "managerSync",
"inputs": [
{
"name": "stakingAccounts",
"type": "address[]",
"internalType": "address[]"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "maxAdditionalRegistrations",
"inputs": [
{
"name": "stakingAccount",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "nodeRegisterdToAccount",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "renounceRole",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "requirementImplementation",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "contract IHoprNetworkRegistryRequirement"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "revokeRole",
"inputs": [
{
"name": "role",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "selfDeregister",
"inputs": [
{
"name": "nodeAddresses",
"type": "address[]",
"internalType": "address[]"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "selfRegister",
"inputs": [
{
"name": "nodeAddresses",
"type": "address[]",
"internalType": "address[]"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "selfSync",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "supportsInterface",
"inputs": [
{
"name": "interfaceId",
"type": "bytes4",
"internalType": "bytes4"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "updateRequirementImplementation",
"inputs": [
{
"name": "_requirementImplementation",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "event",
"name": "Deregistered",
"inputs": [
{
"name": "stakingAccount",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "nodeAddress",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "DeregisteredByManager",
"inputs": [
{
"name": "stakingAccount",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "nodeAddress",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "EligibilityUpdated",
"inputs": [
{
"name": "stakingAccount",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "eligibility",
"type": "bool",
"indexed": true,
"internalType": "bool"
}
],
"anonymous": false
},
{
"type": "event",
"name": "NetworkRegistryStatusUpdated",
"inputs": [
{
"name": "isEnabled",
"type": "bool",
"indexed": true,
"internalType": "bool"
}
],
"anonymous": false
},
{
"type": "event",
"name": "Registered",
"inputs": [
{
"name": "stakingAccount",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "nodeAddress",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "RegisteredByManager",
"inputs": [
{
"name": "stakingAccount",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "nodeAddress",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "RequirementUpdated",
"inputs": [
{
"name": "requirementImplementation",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "RoleAdminChanged",
"inputs": [
{
"name": "role",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "previousAdminRole",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "newAdminRole",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
}
],
"anonymous": false
},
{
"type": "event",
"name": "RoleGranted",
"inputs": [
{
"name": "role",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "sender",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "RoleRevoked",
"inputs": [
{
"name": "role",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "sender",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "error",
"name": "ArrayLengthNotMatch",
"inputs": []
},
{
"type": "error",
"name": "CannotOperateForNode",
"inputs": [
{
"name": "nodeAddress",
"type": "address",
"internalType": "address"
}
]
},
{
"type": "error",
"name": "GloballyDisabledRegistry",
"inputs": []
},
{
"type": "error",
"name": "GloballyEnabledRegistry",
"inputs": []
},
{
"type": "error",
"name": "NodeAlreadyRegisterd",
"inputs": [
{
"name": "nodeAddress",
"type": "address",
"internalType": "address"
}
]
},
{
"type": "error",
"name": "NodeNotYetRegisterd",
"inputs": [
{
"name": "nodeAddress",
"type": "address",
"internalType": "address"
}
]
},
{
"type": "error",
"name": "NodeRegisterdToOtherAccount",
"inputs": [
{
"name": "nodeAddress",
"type": "address",
"internalType": "address"
}
]
},
{
"type": "error",
"name": "NotEnoughAllowanceToRegisterNode",
"inputs": []
}
]Structs§
- Array
Length NotMatch - Custom error with signature
ArrayLengthNotMatch()and selector0xed882f71. - Cannot
Operate ForNode - Custom error with signature
CannotOperateForNode(address)and selector0x07414967. - DEFAULT_
ADMIN_ ROLE Call - Function with signature
DEFAULT_ADMIN_ROLE()and selector0xa217fddf. - DEFAULT_
ADMIN_ ROLE Return - Container type for the return parameters of the
DEFAULT_ADMIN_ROLE()function. - Deregistered
- Event with signature
Deregistered(address,address)and selector0x159a8ae948fcc6e7f8b5495c0d73e91598440af8a62817246c09edc2c28dba8a. - Deregistered
ByManager - Event with signature
DeregisteredByManager(address,address)and selector0x91760a1001f531ec2bee8602be55ad2b1159465edff5bbcd41d20703742a4d42. - Eligibility
Updated - Event with signature
EligibilityUpdated(address,bool)and selector0xe2994f8d6f600ad473dba82c0a890ab7affacb860d3365f474baa3dc04a2e557. - Globally
Disabled Registry - Custom error with signature
GloballyDisabledRegistry()and selector0xc42638bb. - Globally
Enabled Registry - Custom error with signature
GloballyEnabledRegistry()and selector0xed1a0c77. - Hopr
Network Registry Instance - A
HoprNetworkRegistryinstance. - MANAGER_
ROLE Call - Function with signature
MANAGER_ROLE()and selector0xec87621c. - MANAGER_
ROLE Return - Container type for the return parameters of the
MANAGER_ROLE()function. - Network
Registry Status Updated - Event with signature
NetworkRegistryStatusUpdated(bool)and selector0x8bc85f25e3e933978f099408b3bb3eb7630b76f7455f2e205bcbc0a780e17e72. - Node
Already Registerd - Custom error with signature
NodeAlreadyRegisterd(address)and selector0x5b533ba1. - Node
NotYet Registerd - Custom error with signature
NodeNotYetRegisterd(address)and selector0xb1c3c8a8. - Node
Registerd ToOther Account - Custom error with signature
NodeRegisterdToOtherAccount(address)and selector0xbf4fdd73. - NotEnough
Allowance ToRegister Node - Custom error with signature
NotEnoughAllowanceToRegisterNode()and selector0x0fb9bd5c. - Registered
- Event with signature
Registered(address,address)and selector0x0a31ee9d46a828884b81003c8498156ea6aa15b9b54bdd0ef0b533d9eba57e55. - Registered
ByManager - Event with signature
RegisteredByManager(address,address)and selector0x04e1eaa4da18f7e742a4edbbe9ede36cdf75f793bb03ab2158c0877f1caf2b93. - Requirement
Updated - Event with signature
RequirementUpdated(address)and selector0x8ac4b2eb7749f75c5b99b898e547fd615dd7a424e68356ea196b7dae742d6c32. - Role
Admin Changed - Event with signature
RoleAdminChanged(bytes32,bytes32,bytes32)and selector0xbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff. - Role
Granted - Event with signature
RoleGranted(bytes32,address,address)and selector0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d. - Role
Revoked - Event with signature
RoleRevoked(bytes32,address,address)and selector0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b. - constructor
Call - Constructor`.
- count
Registerd Nodes PerAccount Call - Function with signature
countRegisterdNodesPerAccount(address)and selector0x3fa58457. - count
Registerd Nodes PerAccount Return - Container type for the return parameters of the
countRegisterdNodesPerAccount(address)function. - disable
Registry Call - Function with signature
disableRegistry()and selector0xcbebafe0. - disable
Registry Return - Container type for the return parameters of the
disableRegistry()function. - enable
Registry Call - Function with signature
enableRegistry()and selector0xcfb3735f. - enable
Registry Return - Container type for the return parameters of the
enableRegistry()function. - enabled
Call - Function with signature
enabled()and selector0x238dafe0. - enabled
Return - Container type for the return parameters of the
enabled()function. - getRole
Admin Call - Function with signature
getRoleAdmin(bytes32)and selector0x248a9ca3. - getRole
Admin Return - Container type for the return parameters of the
getRoleAdmin(bytes32)function. - getRole
Member Call - Function with signature
getRoleMember(bytes32,uint256)and selector0x9010d07c. - getRole
Member Count Call - Function with signature
getRoleMemberCount(bytes32)and selector0xca15c873. - getRole
Member Count Return - Container type for the return parameters of the
getRoleMemberCount(bytes32)function. - getRole
Member Return - Container type for the return parameters of the
getRoleMember(bytes32,uint256)function. - grant
Role Call - Function with signature
grantRole(bytes32,address)and selector0x2f2ff15d. - grant
Role Return - Container type for the return parameters of the
grantRole(bytes32,address)function. - hasRole
Call - Function with signature
hasRole(bytes32,address)and selector0x91d14854. - hasRole
Return - Container type for the return parameters of the
hasRole(bytes32,address)function. - isAccount
Eligible Call - Function with signature
isAccountEligible(address)and selector0x6ffbf988. - isAccount
Eligible Return - Container type for the return parameters of the
isAccountEligible(address)function. - isNode
Registered AndEligible Call - Function with signature
isNodeRegisteredAndEligible(address)and selector0x4eb1805c. - isNode
Registered AndEligible Return - Container type for the return parameters of the
isNodeRegisteredAndEligible(address)function. - isNode
Registered ByAccount Call - Function with signature
isNodeRegisteredByAccount(address,address)and selector0xa5605da5. - isNode
Registered ByAccount Return - Container type for the return parameters of the
isNodeRegisteredByAccount(address,address)function. - manager
Deregister Call - Function with signature
managerDeregister(address[])and selector0x41b64965. - manager
Deregister Return - Container type for the return parameters of the
managerDeregister(address[])function. - manager
Force Sync Call - Function with signature
managerForceSync(address[],bool[])and selector0xcaf5f501. - manager
Force Sync Return - Container type for the return parameters of the
managerForceSync(address[],bool[])function. - manager
Register Call - Function with signature
managerRegister(address[],address[])and selector0x8d753b2d. - manager
Register Return - Container type for the return parameters of the
managerRegister(address[],address[])function. - manager
Sync Call - Function with signature
managerSync(address[])and selector0x2c33cafb. - manager
Sync Return - Container type for the return parameters of the
managerSync(address[])function. - maxAdditional
Registrations Call - Function with signature
maxAdditionalRegistrations(address)and selector0x2a2deee2. - maxAdditional
Registrations Return - Container type for the return parameters of the
maxAdditionalRegistrations(address)function. - node
Registerd ToAccount Call - Function with signature
nodeRegisterdToAccount(address)and selector0xc7ecab8f. - node
Registerd ToAccount Return - Container type for the return parameters of the
nodeRegisterdToAccount(address)function. - renounce
Role Call - Function with signature
renounceRole(bytes32,address)and selector0x36568abe. - renounce
Role Return - Container type for the return parameters of the
renounceRole(bytes32,address)function. - requirement
Implementation Call - Function with signature
requirementImplementation()and selector0xe3d2a071. - requirement
Implementation Return - Container type for the return parameters of the
requirementImplementation()function. - revoke
Role Call - Function with signature
revokeRole(bytes32,address)and selector0xd547741f. - revoke
Role Return - Container type for the return parameters of the
revokeRole(bytes32,address)function. - self
Deregister Call - Function with signature
selfDeregister(address[])and selector0xa05e0f6d. - self
Deregister Return - Container type for the return parameters of the
selfDeregister(address[])function. - self
Register Call - Function with signature
selfRegister(address[])and selector0x76593a39. - self
Register Return - Container type for the return parameters of the
selfRegister(address[])function. - self
Sync Call - Function with signature
selfSync()and selector0x9c7f643b. - self
Sync Return - Container type for the return parameters of the
selfSync()function. - supports
Interface Call - Function with signature
supportsInterface(bytes4)and selector0x01ffc9a7. - supports
Interface Return - Container type for the return parameters of the
supportsInterface(bytes4)function. - update
Requirement Implementation Call - Function with signature
updateRequirementImplementation(address)and selector0x27b040a1. - update
Requirement Implementation Return - Container type for the return parameters of the
updateRequirementImplementation(address)function.
Enums§
- Hopr
Network Registry Calls - Container for all the
HoprNetworkRegistryfunction calls. - Hopr
Network Registry Errors - Container for all the
HoprNetworkRegistrycustom errors. - Hopr
Network Registry Events - Container for all the
HoprNetworkRegistryevents.
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
HoprNetworkRegistrycontract instance.