@renft/sdk
Version:
**ReNFT** is a multi-chain highly gas-optimised NFT rental protocol and platform that can be whitelabel integrated into any project to enable collateral-free in-house renting, lending, and reward share (scholarship automation).
616 lines (615 loc) • 19.8 kB
TypeScript
declare const _default: readonly [{
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "newResolver";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "newAdmin";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
readonly type: "constructor";
}, {
readonly inputs: readonly [];
readonly name: "InvalidPortionsSum";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidProtocolFeeReceivers";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "LendingEmpty";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "LendingNotActive";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "LendingNotEmpty";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "NftTransferFailed";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "caller";
readonly type: "address";
}];
readonly name: "NotAdmin";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint8";
readonly name: "errorCode";
readonly type: "uint8";
}];
readonly name: "NotLendable";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint8";
readonly name: "errorCode";
readonly type: "uint8";
}];
readonly name: "NotPayable";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint8";
readonly name: "errorCode";
readonly type: "uint8";
}];
readonly name: "NotRentable";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "NotWhitelistedToRent";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "Paused";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint8";
readonly name: "rentDuration";
readonly type: "uint8";
}, {
readonly internalType: "uint8";
readonly name: "maxRentDuration";
readonly type: "uint8";
}];
readonly name: "RentDurationExceedsMaxRentDuration";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "RentingNotEmpty";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ReturningNotAllowed";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "lender";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "msgSender";
readonly type: "address";
}];
readonly name: "StopperNotLender";
readonly type: "error";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "nftAddress";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "upfrontRentFee";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "address payable[]";
readonly name: "allowedRenters";
readonly type: "address[]";
}, {
readonly components: readonly [{
readonly internalType: "address payable[]";
readonly name: "beneficiaries";
readonly type: "address[]";
}, {
readonly internalType: "uint8[]";
readonly name: "portions";
readonly type: "uint8[]";
}];
readonly indexed: false;
readonly internalType: "struct IReNFT.RevShare";
readonly name: "revShares";
readonly type: "tuple";
}, {
readonly indexed: false;
readonly internalType: "uint8";
readonly name: "maxRentDuration";
readonly type: "uint8";
}, {
readonly indexed: false;
readonly internalType: "enum IResolver.PaymentToken";
readonly name: "paymentToken";
readonly type: "uint8";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "lenderAddress";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "tokenId";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "lendingId";
readonly type: "uint256";
}];
readonly name: "Lend";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "lendingId";
readonly type: "uint256";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "renterAddress";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint8";
readonly name: "rentDuration";
readonly type: "uint8";
}];
readonly name: "Rent";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "lendingId";
readonly type: "uint256";
}];
readonly name: "StopLend";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "lendingId";
readonly type: "uint256";
}];
readonly name: "StopRent";
readonly type: "event";
}, {
readonly inputs: readonly [];
readonly name: "flipPaused";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly components: readonly [{
readonly internalType: "contract INFTContract";
readonly name: "nft";
readonly type: "address";
}, {
readonly internalType: "uint256[]";
readonly name: "tokenIds";
readonly type: "uint256[]";
}, {
readonly internalType: "uint256[]";
readonly name: "lendingIds";
readonly type: "uint256[]";
}];
readonly internalType: "struct IReNFT.Nfts";
readonly name: "nfts";
readonly type: "tuple";
}, {
readonly internalType: "uint256[]";
readonly name: "upfrontRentFee";
readonly type: "uint256[]";
}, {
readonly components: readonly [{
readonly internalType: "address payable[]";
readonly name: "allowedRenters";
readonly type: "address[]";
}];
readonly internalType: "struct IReNFT.AllowedRenters[]";
readonly name: "allowedRenters";
readonly type: "tuple[]";
}, {
readonly components: readonly [{
readonly internalType: "address payable[]";
readonly name: "beneficiaries";
readonly type: "address[]";
}, {
readonly internalType: "uint8[]";
readonly name: "portions";
readonly type: "uint8[]";
}];
readonly internalType: "struct IReNFT.RevShare[]";
readonly name: "revShares";
readonly type: "tuple[]";
}, {
readonly internalType: "uint8[]";
readonly name: "maxRentDurations";
readonly type: "uint8[]";
}, {
readonly internalType: "enum IResolver.PaymentToken[]";
readonly name: "paymentTokens";
readonly type: "uint8[]";
}];
readonly name: "lend";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "";
readonly type: "bytes32";
}];
readonly name: "lendingRentings";
readonly outputs: readonly [{
readonly components: readonly [{
readonly internalType: "address payable[]";
readonly name: "allowedRenters";
readonly type: "address[]";
}, {
readonly components: readonly [{
readonly internalType: "address payable[]";
readonly name: "beneficiaries";
readonly type: "address[]";
}, {
readonly internalType: "uint8[]";
readonly name: "portions";
readonly type: "uint8[]";
}];
readonly internalType: "struct IReNFT.RevShare";
readonly name: "revShares";
readonly type: "tuple";
}, {
readonly internalType: "uint256";
readonly name: "upfrontRentFee";
readonly type: "uint256";
}, {
readonly internalType: "address payable";
readonly name: "lenderAddress";
readonly type: "address";
}, {
readonly internalType: "uint8";
readonly name: "maxRentDuration";
readonly type: "uint8";
}, {
readonly internalType: "enum IResolver.PaymentToken";
readonly name: "paymentToken";
readonly type: "uint8";
}, {
readonly internalType: "bool";
readonly name: "inactive";
readonly type: "bool";
}];
readonly internalType: "struct IReNFT.Lending";
readonly name: "lending";
readonly type: "tuple";
}, {
readonly components: readonly [{
readonly internalType: "address payable";
readonly name: "renterAddress";
readonly type: "address";
}, {
readonly internalType: "uint32";
readonly name: "rentedAt";
readonly type: "uint32";
}, {
readonly internalType: "uint8";
readonly name: "rentDuration";
readonly type: "uint8";
}];
readonly internalType: "struct IReNFT.Renting";
readonly name: "renting";
readonly type: "tuple";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}, {
readonly internalType: "uint256[]";
readonly name: "";
readonly type: "uint256[]";
}, {
readonly internalType: "uint256[]";
readonly name: "";
readonly type: "uint256[]";
}, {
readonly internalType: "bytes";
readonly name: "";
readonly type: "bytes";
}];
readonly name: "onERC1155BatchReceived";
readonly outputs: readonly [{
readonly internalType: "bytes4";
readonly name: "";
readonly type: "bytes4";
}];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}, {
readonly internalType: "bytes";
readonly name: "";
readonly type: "bytes";
}];
readonly name: "onERC1155Received";
readonly outputs: readonly [{
readonly internalType: "bytes4";
readonly name: "";
readonly type: "bytes4";
}];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}, {
readonly internalType: "bytes";
readonly name: "";
readonly type: "bytes";
}];
readonly name: "onERC721Received";
readonly outputs: readonly [{
readonly internalType: "bytes4";
readonly name: "";
readonly type: "bytes4";
}];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "paused";
readonly outputs: readonly [{
readonly internalType: "bool";
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly components: readonly [{
readonly internalType: "contract INFTContract";
readonly name: "nft";
readonly type: "address";
}, {
readonly internalType: "uint256[]";
readonly name: "tokenIds";
readonly type: "uint256[]";
}, {
readonly internalType: "uint256[]";
readonly name: "lendingIds";
readonly type: "uint256[]";
}];
readonly internalType: "struct IReNFT.Nfts";
readonly name: "nfts";
readonly type: "tuple";
}, {
readonly internalType: "address payable[]";
readonly name: "renter";
readonly type: "address[]";
}, {
readonly internalType: "uint256[]";
readonly name: "amountToPay";
readonly type: "uint256[]";
}];
readonly name: "pay";
readonly outputs: readonly [];
readonly stateMutability: "payable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly components: readonly [{
readonly internalType: "contract INFTContract";
readonly name: "nft";
readonly type: "address";
}, {
readonly internalType: "uint256[]";
readonly name: "tokenIds";
readonly type: "uint256[]";
}, {
readonly internalType: "uint256[]";
readonly name: "lendingIds";
readonly type: "uint256[]";
}];
readonly internalType: "struct IReNFT.Nfts";
readonly name: "nfts";
readonly type: "tuple";
}, {
readonly internalType: "uint8[]";
readonly name: "rentDurations";
readonly type: "uint8[]";
}];
readonly name: "rent";
readonly outputs: readonly [];
readonly stateMutability: "payable";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "rentFee";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "revokeOwnership";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address payable[]";
readonly name: "newFeeReceivers";
readonly type: "address[]";
}, {
readonly internalType: "uint8[]";
readonly name: "newFeePortions";
readonly type: "uint8[]";
}];
readonly name: "setProtocolFeeReceivers";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "newRentFee";
readonly type: "uint256";
}];
readonly name: "setRentFee";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address[]";
readonly name: "newRentStoppers";
readonly type: "address[]";
}];
readonly name: "setRentStoppers";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address[]";
readonly name: "newRewardPayers";
readonly type: "address[]";
}];
readonly name: "setRewardPayers";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly components: readonly [{
readonly internalType: "contract INFTContract";
readonly name: "nft";
readonly type: "address";
}, {
readonly internalType: "uint256[]";
readonly name: "tokenIds";
readonly type: "uint256[]";
}, {
readonly internalType: "uint256[]";
readonly name: "lendingIds";
readonly type: "uint256[]";
}];
readonly internalType: "struct IReNFT.Nfts";
readonly name: "nfts";
readonly type: "tuple";
}];
readonly name: "stopLend";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly components: readonly [{
readonly internalType: "contract INFTContract";
readonly name: "nft";
readonly type: "address";
}, {
readonly internalType: "uint256[]";
readonly name: "tokenIds";
readonly type: "uint256[]";
}, {
readonly internalType: "uint256[]";
readonly name: "lendingIds";
readonly type: "uint256[]";
}];
readonly internalType: "struct IReNFT.Nfts";
readonly name: "nfts";
readonly type: "tuple";
}];
readonly name: "stopRent";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes4";
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly name: "supportsInterface";
readonly outputs: readonly [{
readonly internalType: "bool";
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
readonly type: "function";
}];
export default _default;