@vechain/vebetterdao-contracts
Version:
Vebetter DAO smart contracts, including their addresses, ABIs, and interfaces.
324 lines (323 loc) • 6.77 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "INodeManagement",
"sourceName": "contracts/interfaces/INodeManagement.sol",
"abi": [
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
},
{
"internalType": "address",
"name": "delegatee",
"type": "address"
}
],
"name": "NodeManagementNodeAlreadyDelegated",
"type": "error"
},
{
"inputs": [],
"name": "NodeManagementNodeNotDelegated",
"type": "error"
},
{
"inputs": [],
"name": "NodeManagementNonNodeHolder",
"type": "error"
},
{
"inputs": [],
"name": "NodeManagementSelfDelegation",
"type": "error"
},
{
"inputs": [],
"name": "NodeManagementZeroAddress",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "delegatee",
"type": "address"
},
{
"indexed": false,
"internalType": "bool",
"name": "delegated",
"type": "bool"
}
],
"name": "NodeDelegated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "oldContractAddress",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "newContractAddress",
"type": "address"
}
],
"name": "VechainNodeContractSet",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "delegatee",
"type": "address"
}
],
"name": "delegateNode",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "getDirectNodeOwnership",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "getNodeIds",
"outputs": [
{
"internalType": "uint256[]",
"name": "",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
}
],
"name": "getNodeLevel",
"outputs": [
{
"internalType": "enum VechainNodesDataTypes.NodeStrengthLevel",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
}
],
"name": "getNodeManager",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "getUsersNodeLevels",
"outputs": [
{
"internalType": "enum VechainNodesDataTypes.NodeStrengthLevel[]",
"name": "",
"type": "uint8[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "vechainNodesContract",
"type": "address"
},
{
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"internalType": "address",
"name": "upgrader",
"type": "address"
}
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
}
],
"name": "isNodeDelegated",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "isNodeDelegator",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "isNodeHolder",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
},
{
"internalType": "uint256",
"name": "nodeId",
"type": "uint256"
}
],
"name": "isNodeManager",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "removeNodeDelegation",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "vechainNodesContract",
"type": "address"
}
],
"name": "setVechainNodesContract",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x",
"deployedBytecode": "0x",
"linkReferences": {},
"deployedLinkReferences": {}
}