@vechain/vebetterdao-contracts
Version:
Open-source repository that houses the smart contracts powering the decentralized VeBetterDAO on the VeChain Thor blockchain.
1,020 lines (1,019 loc) • 22.5 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "IGrantsManagerV2",
"sourceName": "contracts/deprecated/V2/interfaces/IGrantsManagerV2.sol",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "caller",
"type": "address"
},
{
"internalType": "address",
"name": "recipient",
"type": "address"
}
],
"name": "CallerIsNotTheGrantReceiver",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "GrantAlreadyCompleted",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "GrantAlreadyRejected",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "availableFunds",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "requiredFunds",
"type": "uint256"
}
],
"name": "InsufficientFunds",
"type": "error"
},
{
"inputs": [],
"name": "InvalidAmount",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "selector",
"type": "bytes4"
}
],
"name": "InvalidFunctionSelector",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "InvalidMilestoneIndex",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "provided",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "required",
"type": "uint256"
}
],
"name": "InvalidNumberOfMilestones",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "target",
"type": "address"
}
],
"name": "InvalidTarget",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "MilestoneAlreadyApproved",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "MilestoneAlreadyClaimed",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "MilestoneAmountZero",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "claimedAmount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "totalAmount",
"type": "uint256"
}
],
"name": "MilestoneClaimedAmountExceedsTotalAmount",
"type": "error"
},
{
"inputs": [],
"name": "MilestoneDetailsMetadataURIEmpty",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "MilestoneNotApprovedByAdmin",
"type": "error"
},
{
"inputs": [],
"name": "MilestoneProposerZeroAddress",
"type": "error"
},
{
"inputs": [
{
"internalType": "enum IGrantsManagerV2.MilestoneState",
"name": "status",
"type": "uint8"
}
],
"name": "MilestoneStateNotPending",
"type": "error"
},
{
"inputs": [],
"name": "MilestoneTotalAmountZero",
"type": "error"
},
{
"inputs": [],
"name": "NotAuthorized",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "PreviousMilestoneNotApproved",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "ProposalNotExecuted",
"type": "error"
},
{
"inputs": [],
"name": "TransferFailed",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "GrantCanceled",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "newGrantsReceiver",
"type": "address"
}
],
"name": "GrantsReceiverUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "MilestoneClaimed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "string",
"name": "newMilestoneMetadataURI",
"type": "string"
}
],
"name": "MilestoneMetadataURIUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "MilestoneRejectedAndFundsReturnedToTreasury",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "MilestoneValidated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "proposer",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "grantsReceiver",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalAmount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "string",
"name": "metadataURI",
"type": "string"
}
],
"name": "MilestonesCreated",
"type": "event"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
},
{
"internalType": "string",
"name": "reason",
"type": "string"
}
],
"name": "approveMilestoneWithReason",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "approveMilestones",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "claimMilestone",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "metadataURI",
"type": "string"
},
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "address",
"name": "proposer",
"type": "address"
},
{
"internalType": "address",
"name": "grantsReceiver",
"type": "address"
},
{
"internalType": "bytes[]",
"name": "calldatas",
"type": "bytes[]"
}
],
"name": "createMilestones",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "getB3trContract",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getGovernorContract",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "getGrantProposal",
"outputs": [
{
"components": [
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "totalAmount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "claimedAmount",
"type": "uint256"
},
{
"internalType": "address",
"name": "proposer",
"type": "address"
},
{
"internalType": "address",
"name": "grantsReceiver",
"type": "address"
},
{
"components": [
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bool",
"name": "isClaimed",
"type": "bool"
},
{
"internalType": "bool",
"name": "isApproved",
"type": "bool"
},
{
"internalType": "bool",
"name": "isRejected",
"type": "bool"
},
{
"internalType": "string",
"name": "reason",
"type": "string"
}
],
"internalType": "struct IGrantsManagerV2.Milestone[]",
"name": "milestones",
"type": "tuple[]"
},
{
"internalType": "string",
"name": "metadataURI",
"type": "string"
}
],
"internalType": "struct IGrantsManagerV2.GrantProposal",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "getGrantsReceiverAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "getMilestone",
"outputs": [
{
"components": [
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bool",
"name": "isClaimed",
"type": "bool"
},
{
"internalType": "bool",
"name": "isApproved",
"type": "bool"
},
{
"internalType": "bool",
"name": "isRejected",
"type": "bool"
},
{
"internalType": "string",
"name": "reason",
"type": "string"
}
],
"internalType": "struct IGrantsManagerV2.Milestone",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "getMilestoneMetadataURI",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "getMilestones",
"outputs": [
{
"components": [
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bool",
"name": "isClaimed",
"type": "bool"
},
{
"internalType": "bool",
"name": "isApproved",
"type": "bool"
},
{
"internalType": "bool",
"name": "isRejected",
"type": "bool"
},
{
"internalType": "string",
"name": "reason",
"type": "string"
}
],
"internalType": "struct IGrantsManagerV2.Milestone[]",
"name": "",
"type": "tuple[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getMinimumMilestoneCount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "milestoneId",
"type": "uint256"
}
],
"name": "getTotalAmountForMilestones",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getTreasuryContract",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "grantState",
"outputs": [
{
"internalType": "enum IGrantsManagerV2.GrantState",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "isClaimable",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "isGrantCompleted",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "isGrantInDevelopment",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "isGrantRejected",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "milestoneIndex",
"type": "uint256"
}
],
"name": "milestoneState",
"outputs": [
{
"internalType": "enum IGrantsManagerV2.MilestoneState",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "rejectMilestones",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_b3tr",
"type": "address"
}
],
"name": "setB3trContract",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_governor",
"type": "address"
}
],
"name": "setGovernorContract",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "minimumMilestoneCount",
"type": "uint256"
}
],
"name": "setMinimumMilestoneCount",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_treasury",
"type": "address"
}
],
"name": "setTreasuryContract",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "address",
"name": "newGrantsReceiver",
"type": "address"
}
],
"name": "updateGrantsReceiver",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
},
{
"internalType": "string",
"name": "newMilestoneMetadataURI",
"type": "string"
}
],
"name": "updateMilestoneMetadataURI",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x",
"deployedBytecode": "0x",
"linkReferences": {},
"deployedLinkReferences": {}
}