UNPKG

@collabland/staking-contracts

Version:
1,027 lines (1,026 loc) 19.8 kB
[ { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "dailyPoints", "type": "uint256" }, { "internalType": "uint256", "name": "endTime", "type": "uint256" } ], "name": "beginNewStakingSeason", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "stakingIndex", "type": "uint256" } ], "name": "emergencyUnstake", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" } ], "name": "endStakingSeason", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "harvestAllStakes", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "stakingIndex", "type": "uint256" } ], "name": "harvestStake", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "InsufficientPointBalance", "type": "error" }, { "inputs": [], "name": "InvalidStakingEndTime", "type": "error" }, { "inputs": [], "name": "InvalidStakingRate_EndSeasonInstead", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" } ], "name": "MaxStakingSeasonReached", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" } ], "name": "NFTNotAllowed", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" } ], "name": "NoActiveStakingSeason", "type": "error" }, { "inputs": [], "name": "NoChangesMade", "type": "error" }, { "inputs": [], "name": "NoPointsToHarvest", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "NotStaked", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "_points", "type": "uint256" } ], "name": "redeem", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "redemptionLocation", "type": "address" }, { "internalType": "uint256", "name": "redemptionPointsAmount", "type": "uint256" } ], "name": "RedemptionFailed", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "TokenIdNotAllowed", "type": "error" }, { "inputs": [], "name": "UnevenArraySizes", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "nft", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "dailyPoints", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "endTime", "type": "uint256" } ], "name": "BeginStakingSeason", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "nft", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "DisableStaking", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "nft", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "EnableStaking", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "staker", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "points", "type": "uint256" } ], "name": "Harvest", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "oldOwner", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "staker", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "points", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "redeemLocation", "type": "address" } ], "name": "Redeem", "type": "event" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_redeemFunction", "type": "string" } ], "name": "setRedeemFunction", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_redeemLocation", "type": "address" } ], "name": "setRedeemLocation", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "location", "type": "address" } ], "name": "SetRedeemLocation", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "stakingPercentMultiplier", "type": "uint256" } ], "name": "setStakingPercentMultiplier", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "nft", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "indexed": true, "internalType": "uint256", "name": "stakingSeason", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "multiplier", "type": "uint256" } ], "name": "SetStakingPercentMultiplier", "type": "event" }, { "inputs": [ { "internalType": "address[]", "name": "nft", "type": "address[]" }, { "internalType": "uint256[]", "name": "tokenId", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "stakingPercentMultiplier", "type": "uint256[]" } ], "name": "setStakingPercentMultiplierMultiple", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bool", "name": "disabled", "type": "bool" } ], "name": "setTokenStakingDisabled", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "nft", "type": "address[]" }, { "internalType": "uint256[]", "name": "tokenId", "type": "uint256[]" }, { "internalType": "bool", "name": "disabled", "type": "bool" } ], "name": "setTokenStakingDisabledMultiple", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "stake", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "staker", "type": "address" }, { "indexed": true, "internalType": "address", "name": "nft", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Stake", "type": "event" }, { "inputs": [ { "internalType": "address[]", "name": "nft", "type": "address[]" }, { "internalType": "uint256[]", "name": "tokenId", "type": "uint256[]" } ], "name": "stakeMultiple", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnershipRedeemLocation", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "stakingIndex", "type": "uint256" } ], "name": "unstake", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "staker", "type": "address" }, { "indexed": true, "internalType": "address", "name": "nft", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Unstake", "type": "event" }, { "inputs": [ { "internalType": "uint256[]", "name": "stakingIndex", "type": "uint256[]" } ], "name": "unstakeMultiple", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "endTime", "type": "uint256" } ], "name": "updateStakingSeasonEndTime", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getAccumulatedHarvestedPoints", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getAccumulatedRedeemedPoints", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getAllowednfts", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getAllStakers", "outputs": [ { "internalType": "address[]", "name": "staker", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" } ], "name": "getCurrentStakingSeasonEndTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "staker", "type": "address" }, { "internalType": "uint256", "name": "stakingIndex", "type": "uint256" } ], "name": "getEarnedPointsFromStake", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getRedeemFunction", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getRedeemLocation", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getStaker", "outputs": [ { "internalType": "address", "name": "staker", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "staker", "type": "address" } ], "name": "getStakerAccumulatedHarvestedPoints", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "staker", "type": "address" } ], "name": "getStakerAccumulatedRedeemedPoints", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "staker", "type": "address" } ], "name": "getStakerUnharvestedPoints", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "staker", "type": "address" } ], "name": "getStakes", "outputs": [ { "components": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "timestamp", "type": "uint256" }, { "internalType": "uint256", "name": "lastHarvest", "type": "uint256" }, { "internalType": "uint256", "name": "lastHarvestStakingSeasonIndex", "type": "uint256" } ], "internalType": "struct Interface_Rival_Bears_Staking.UserStake[]", "name": "", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "stakingSeasonIndex", "type": "uint256" } ], "name": "getStakingPercentMultiplier", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "nft", "type": "address[]" }, { "internalType": "uint256[]", "name": "tokenId", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "stakingSeasonIndex", "type": "uint256[]" } ], "name": "getStakingPercentMultiplierMultiple", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" } ], "name": "getStakingSeason", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "nft", "type": "address" }, { "internalType": "uint256", "name": "stakingSeasonIndex", "type": "uint256" } ], "name": "getStakingSeasonEndTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTotalStaked", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ]