@infy-protocol/sdk
Version:
Lend and rent any ERC721s and ERC1155s on supported mainnet and testnet.
1 lines • 160 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("ethers"),n=(e=require("bignumber.js"))&&"object"==typeof e&&"default"in e?e.default:e;function b(){b=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,a="function"==typeof Symbol?Symbol:{},f=a.iterator||"@@iterator",d=a.asyncIterator||"@@asyncIterator",r=a.toStringTag||"@@toStringTag";function s(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,n){return e[t]=n}}function i(e,t,n,b){var a=Object.create((t&&t.prototype instanceof u?t:u).prototype),f=new E(b||[]);return a._invoke=function(e,t,n){var b="suspendedStart";return function(a,f){if("executing"===b)throw new Error("Generator is already running");if("completed"===b){if("throw"===a)throw f;return{value:void 0,done:!0}}for(n.method=a,n.arg=f;;){var d=n.delegate;if(d){var r=g(d,n);if(r){if(r===o)continue;return r}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===b)throw b="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);b="executing";var s=c(e,t,n);if("normal"===s.type){if(b=n.done?"completed":"suspendedYield",s.arg===o)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(b="completed",n.method="throw",n.arg=s.arg)}}}(e,n,f),a}function c(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=i;var o={};function u(){}function p(){}function l(){}var y={};s(y,f,(function(){return this}));var m=Object.getPrototypeOf,h=m&&m(m(I([])));h&&h!==t&&n.call(h,f)&&(y=h);var T=l.prototype=u.prototype=Object.create(y);function v(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function A(e,t){var b;this._invoke=function(a,f){function d(){return new t((function(b,d){!function b(a,f,d,r){var s=c(e[a],e,f);if("throw"!==s.type){var i=s.arg,o=i.value;return o&&"object"==typeof o&&n.call(o,"__await")?t.resolve(o.__await).then((function(e){b("next",e,d,r)}),(function(e){b("throw",e,d,r)})):t.resolve(o).then((function(e){i.value=e,d(i)}),(function(e){return b("throw",e,d,r)}))}r(s.arg)}(a,f,b,d)}))}return b=b?b.then(d,d):d()}}function g(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,g(e,t),"throw"===t.method))return o;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return o}var b=c(n,e.iterator,t.arg);if("throw"===b.type)return t.method="throw",t.arg=b.arg,t.delegate=null,o;var a=b.arg;return a?a.done?(t[e.resultName]=a.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,o):a:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,o)}function C(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function R(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function E(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(C,this),this.reset(!0)}function I(e){if(e){var t=e[f];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var b=-1,a=function t(){for(;++b<e.length;)if(n.call(e,b))return t.value=e[b],t.done=!1,t;return t.value=void 0,t.done=!0,t};return a.next=a}}return{next:x}}function x(){return{value:void 0,done:!0}}return p.prototype=l,s(T,"constructor",l),s(l,"constructor",p),p.displayName=s(l,r,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,l):(e.__proto__=l,s(e,r,"GeneratorFunction")),e.prototype=Object.create(T),e},e.awrap=function(e){return{__await:e}},v(A.prototype),s(A.prototype,d,(function(){return this})),e.AsyncIterator=A,e.async=function(t,n,b,a,f){void 0===f&&(f=Promise);var d=new A(i(t,n,b,a),f);return e.isGeneratorFunction(n)?d:d.next().then((function(e){return e.done?e.value:d.next()}))},v(T),s(T,r,"Generator"),s(T,f,(function(){return this})),s(T,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var b=t.pop();if(b in e)return n.value=b,n.done=!1,n}return n.done=!0,n}},e.values=I,E.prototype={constructor:E,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(R),!e)for(var t in this)"t"===t.charAt(0)&&n.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function b(n,b){return d.type="throw",d.arg=e,t.next=n,b&&(t.method="next",t.arg=void 0),!!b}for(var a=this.tryEntries.length-1;a>=0;--a){var f=this.tryEntries[a],d=f.completion;if("root"===f.tryLoc)return b("end");if(f.tryLoc<=this.prev){var r=n.call(f,"catchLoc"),s=n.call(f,"finallyLoc");if(r&&s){if(this.prev<f.catchLoc)return b(f.catchLoc,!0);if(this.prev<f.finallyLoc)return b(f.finallyLoc)}else if(r){if(this.prev<f.catchLoc)return b(f.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<f.finallyLoc)return b(f.finallyLoc)}}}},abrupt:function(e,t){for(var b=this.tryEntries.length-1;b>=0;--b){var a=this.tryEntries[b];if(a.tryLoc<=this.prev&&n.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var f=a;break}}f&&("break"===e||"continue"===e)&&f.tryLoc<=t&&t<=f.finallyLoc&&(f=null);var d=f?f.completion:{};return d.type=e,d.arg=t,f?(this.method="next",this.next=f.finallyLoc,o):this.complete(d)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),o},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),R(n),o}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var b=n.completion;if("throw"===b.type){var a=b.arg;R(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:I(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),o}},e}function a(e,t,n,b,a,f,d){try{var r=e[f](d),s=r.value}catch(e){return void n(e)}r.done?t(s):Promise.resolve(s).then(b,a)}function f(e){return function(){var t=this,n=arguments;return new Promise((function(b,f){var d=e.apply(t,n);function r(e){a(d,b,f,r,s,"next",e)}function s(e){a(d,b,f,r,s,"throw",e)}r(void 0)}))}}function d(e,t){var n,b;e.prototype=Object.create(t.prototype),e.prototype.constructor=e,n=e,b=t,(Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(n,b)}var r,s,i=[{inputs:[{internalType:"address",name:"_paymentOptionProvider",type:"address"},{internalType:"address payable",name:"_treasury",type:"address"},{internalType:"address",name:"_admin",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{internalType:"uint256",name:"lendAmount",type:"uint256"},{internalType:"uint256",name:"availableAmount",type:"uint256"}],name:"ActiveRenting",type:"error"},{inputs:[],name:"ClaimIsNotAllowedYet",type:"error"},{inputs:[],name:"CollateralPriceIsZero",type:"error"},{inputs:[],name:"DistributeClaimError",type:"error"},{inputs:[{internalType:"uint8",name:"code",type:"uint8"}],name:"DistributePaymentError",type:"error"},{inputs:[],name:"ExceedMaxRentFee",type:"error"},{inputs:[],name:"LendingEmpty",type:"error"},{inputs:[],name:"LendingNotEmpty",type:"error"},{inputs:[],name:"NoDataPassed",type:"error"},{inputs:[],name:"NotAllowedToRent",type:"error"},{inputs:[{internalType:"address",name:"caller",type:"address"}],name:"NotAnAdmin",type:"error"},{inputs:[{internalType:"uint8",name:"errorCode",type:"uint8"}],name:"NotLendable",type:"error"},{inputs:[{internalType:"uint8",name:"errorCode",type:"uint8"}],name:"NotRentable",type:"error"},{inputs:[],name:"Paused",type:"error"},{inputs:[{internalType:"uint256",name:"rentAmount",type:"uint256"},{internalType:"uint256",name:"availableAmount",type:"uint256"}],name:"RentAmountExceedsAvailableAmount",type:"error"},{inputs:[{internalType:"uint32",name:"rentDuration",type:"uint32"},{internalType:"uint32",name:"minRentDuration",type:"uint32"}],name:"RentDurationBelowMinRentDuration",type:"error"},{inputs:[{internalType:"uint32",name:"rentDuration",type:"uint32"},{internalType:"uint32",name:"maxRentDuration",type:"uint32"}],name:"RentDurationExceedsMaxRentDuration",type:"error"},{inputs:[],name:"RentPriceIsZero",type:"error"},{inputs:[],name:"RentingEmpty",type:"error"},{inputs:[],name:"RentingNotEmpty",type:"error"},{inputs:[],name:"ReturnIsPastDuration",type:"error"},{inputs:[],name:"ReturningNotAllowed",type:"error"},{inputs:[{internalType:"address",name:"lender",type:"address"},{internalType:"address",name:"msgSender",type:"address"}],name:"StopperNotLender",type:"error"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"isERC721",type:"bool"},{indexed:!0,internalType:"address",name:"lenderAddress",type:"address"},{indexed:!0,internalType:"address",name:"nftAddress",type:"address"},{indexed:!0,internalType:"uint256",name:"tokenId",type:"uint256"},{indexed:!1,internalType:"uint256",name:"lendingId",type:"uint256"},{indexed:!1,internalType:"uint32",name:"maxRentDuration",type:"uint32"},{indexed:!1,internalType:"uint32",name:"minRentDuration",type:"uint32"},{indexed:!1,internalType:"uint256",name:"dailyRentPrice",type:"uint256"},{indexed:!1,internalType:"uint256",name:"lendAmount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"collateral",type:"uint256"},{indexed:!1,internalType:"address[]",name:"allowedRenters",type:"address[]"},{indexed:!1,internalType:"uint8",name:"paymentOption",type:"uint8"}],name:"Lend",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"renterAddress",type:"address"},{indexed:!0,internalType:"uint256",name:"lendingId",type:"uint256"},{indexed:!0,internalType:"uint256",name:"rentingId",type:"uint256"},{indexed:!1,internalType:"uint256",name:"rentAmount",type:"uint256"},{indexed:!1,internalType:"uint32",name:"rentDuration",type:"uint32"},{indexed:!1,internalType:"uint32",name:"rentedAt",type:"uint32"}],name:"Rent",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"rentingId",type:"uint256"},{indexed:!1,internalType:"uint32",name:"claimedAt",type:"uint32"},{indexed:!1,internalType:"bool",name:"isCollateralFree",type:"bool"}],name:"RentOrCollateralClaimed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"lendingId",type:"uint256"},{indexed:!1,internalType:"uint32",name:"stoppedAt",type:"uint32"}],name:"StopLend",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"rentingId",type:"uint256"},{indexed:!1,internalType:"uint32",name:"stoppedAt",type:"uint32"}],name:"StopRent",type:"event"},{inputs:[{internalType:"enum NFTStandard[]",name:"_nftStandards",type:"uint8[]"},{internalType:"address[]",name:"_nfts",type:"address[]"},{internalType:"uint256[]",name:"_tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"_lendingIds",type:"uint256[]"},{internalType:"uint256[]",name:"_rentingIds",type:"uint256[]"}],name:"claimRentOrCollateral",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_nfts",type:"address"},{internalType:"uint256",name:"_tokenIds",type:"uint256"},{internalType:"uint256",name:"_lendingIds",type:"uint256"}],name:"getLendingInfo",outputs:[{internalType:"uint8",name:"",type:"uint8"},{internalType:"address",name:"",type:"address"},{internalType:"uint32",name:"",type:"uint32"},{internalType:"uint32",name:"",type:"uint32"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_nfts",type:"address"},{internalType:"uint256",name:"_tokenIds",type:"uint256"},{internalType:"uint256",name:"_rentingIds",type:"uint256"}],name:"getRentingInfo",outputs:[{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint32",name:"",type:"uint32"},{internalType:"uint32",name:"",type:"uint32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"enum NFTStandard[]",name:"_nftStandards",type:"uint8[]"},{internalType:"address[]",name:"_nfts",type:"address[]"},{internalType:"uint256[]",name:"_tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"_lendAmounts",type:"uint256[]"},{internalType:"uint32[]",name:"_maxRentDurations",type:"uint32[]"},{internalType:"uint32[]",name:"_minRentDurations",type:"uint32[]"},{internalType:"uint256[]",name:"_dailyRentPrices",type:"uint256[]"},{internalType:"uint8[]",name:"_paymentOptions",type:"uint8[]"},{internalType:"uint256[]",name:"_collateralPrices",type:"uint256[]"},{components:[{internalType:"address[]",name:"allowedRenters",type:"address[]"}],internalType:"struct ITimeBasedNFTRentals.AllowedRenters[]",name:"_allowedRenters",type:"tuple[]"}],name:"lend",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256[]",name:"",type:"uint256[]"},{internalType:"uint256[]",name:"",type:"uint256[]"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC1155BatchReceived",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC1155Received",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC721Received",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"enum NFTStandard[]",name:"_nftStandards",type:"uint8[]"},{internalType:"address[]",name:"_nfts",type:"address[]"},{internalType:"uint256[]",name:"_tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"_lendingIds",type:"uint256[]"},{internalType:"uint32[]",name:"_rentDurations",type:"uint32[]"},{internalType:"uint256[]",name:"_rentAmounts",type:"uint256[]"}],name:"rent",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"rentFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"_paused",type:"bool"}],name:"setPaused",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_rentFee",type:"uint256"}],name:"setRentFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address payable",name:"_treasury",type:"address"}],name:"setTreasury",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"enum NFTStandard[]",name:"_nftStandards",type:"uint8[]"},{internalType:"address[]",name:"_nfts",type:"address[]"},{internalType:"uint256[]",name:"_tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"_lendingIds",type:"uint256[]"}],name:"stopLending",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"enum NFTStandard[]",name:"_nftStandards",type:"uint8[]"},{internalType:"address[]",name:"_nfts",type:"address[]"},{internalType:"uint256[]",name:"_tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"_lendingIds",type:"uint256[]"},{internalType:"uint256[]",name:"_rentingIds",type:"uint256[]"}],name:"stopRenting",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"}],c=function(e,t){return e.length===t.length},o=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];for(var b=t[0],a=0,f=t;a<f.length;a++){var d=f[a];if(d){if(!c(b,d))throw new Error("args length variable");b=d}}return!0},u=function(e){if(1===e.nftAddresses.length)return e;o(Object.values(e));var t=new Map,n={nftAddresses:[],tokenIds:[],nftStandards:[]},b=function(e){for(var t=new Array(e.length),n=0;n<e.length;++n)t[n]=n;return t.sort((function(t,n){return e[t].lt(e[n])?-1:e[t].gt(e[n])?1:0})),{sortedTokenID:a(t,e),argsort:t}},a=function(e,t){return e.map((function(e){return t[e]}))};Object.values(e.nftAddresses).forEach((function(n,b){t=t.has(n)?function(n,b){for(var a=t.get(n),f=0,d=Object.entries(e);f<d.length;f++){var r,s=d[f],i=s[0],c=s[1];if(!a)throw new Error("could not find "+n);c&&(a[i]=[].concat(null!=(r=a[i])?r:[],[c[b]]))}return t}(n,b):function(n,b){return t.set(n,{nftStandards:[e.nftStandards[b]],nftAddresses:[n],tokenIds:[e.tokenIds[b]],lendAmounts:e.lendAmounts?[e.lendAmounts[b]]:void 0,rentAmounts:e.rentAmounts?[e.rentAmounts[b]]:void 0,maxRentDurations:e.maxRentDurations?[e.maxRentDurations[b]]:void 0,minRentDurations:e.minRentDurations?[e.minRentDurations[b]]:void 0,dailyRentPrices:e.dailyRentPrices?[e.dailyRentPrices[b]]:void 0,collateralPrices:e.collateralPrices?[e.collateralPrices[b]]:void 0,paymentOptions:e.paymentOptions?[e.paymentOptions[b]]:void 0,rentDurations:e.rentDurations?[e.rentDurations[b]]:void 0,lendingIds:e.lendingIds?[e.lendingIds[b]]:void 0,rentingIds:e.rentingIds?[e.rentingIds[b]]:void 0,allowedRenters:e.allowedRenters?[e.allowedRenters[b]]:void 0}),t}(n,b)}));for(var f=t.keys();f;){var d=f.next().value;if(!d)break;for(var r=t.get(d),s=b(r.tokenIds).argsort,i=0,c=Object.keys(r);i<c.length;i++){var u,p,l=c[i];if(r[l]){var y=a(s,null!=(u=r[l])?u:[]);n[l]=[].concat(null!=(p=n[l])?p:[],y)}}}return n},p=function(e){if(1===e.nftAddresses.length)return e;o(Object.values(e));var t=new Map,n={nftAddresses:[],tokenIds:[],nftStandards:[]},b=function(e){for(var t=new Array(e.length),n=0;n<e.length;++n)t[n]=n;return t.sort((function(t,n){return e[t].lt(e[n])?-1:e[t].gt(e[n])?1:0})),{sortedTokenID:a(t,e),argsort:t}},a=function(e,t){return e.map((function(e){return t[e]}))};Object.values(e.nftAddresses).forEach((function(n,b){t=t.has(n)?function(n,b){for(var a=t.get(n),f=0,d=Object.entries(e);f<d.length;f++){var r,s=d[f],i=s[0],c=s[1];if(!a)throw new Error("could not find "+n);c&&(a[i]=[].concat(null!=(r=a[i])?r:[],[c[b]]))}return t}(n,b):function(n,b){return t.set(n,{nftStandards:e.nftStandards?[e.nftStandards[b]]:void 0,nftAddresses:[n],tokenIds:[e.tokenIds[b]],lendAmounts:e.lendAmounts?[e.lendAmounts[b]]:void 0,rentAmounts:e.rentAmounts?[e.rentAmounts[b]]:void 0,maxRentDurations:e.maxRentDurations?[e.maxRentDurations[b]]:void 0,paymentOptions:e.paymentOptions?[e.paymentOptions[b]]:void 0,rentDurations:e.rentDurations?[e.rentDurations[b]]:void 0,lendingIds:e.lendingIds?[e.lendingIds[b]]:void 0,rentingIds:e.rentingIds?[e.rentingIds[b]]:void 0,upfrontFees:e.upfrontFees?[e.upfrontFees[b]]:void 0,revenueShareInfos:e.revenueShareInfos?[e.revenueShareInfos[b]]:void 0,allowedRenters:e.allowedRenters?[e.allowedRenters[b]]:void 0}),t}(n,b)}));for(var f=t.keys();f;){var d=f.next().value;if(!d)break;for(var r=t.get(d),s=b(r.tokenIds).argsort,i=0,c=Object.keys(r);i<c.length;i++){var u,p,l=c[i];if(r[l]){var y=a(s,null!=(u=r[l])?u:[]);n[l]=[].concat(null!=(p=n[l])?p:[],y)}}}return n};(s=exports.ContractType||(exports.ContractType={})).COLLATERALIZED="Collateralized",s.COLLATERAL_FREE="CollateralFree",s.REVENUE_SHARE="RevenueShare",s.REVENUE_SHARED_CONFIGURATOR="RevenueSharedConfigurator",s.E721="E721",s.E721_B="E721B",s.E1155="E1155",s.E1155_B="E1155B",s.WETH="WETH",s.DAI="DAI",s.USDC="USDC",s.USDT="USDT",s.T_USD="TUSD",s.UTILS="Utils";var l,y=Object.values(exports.ContractType).filter((function(e){return"string"==typeof e}));(l=exports.SupportedChainIds||(exports.SupportedChainIds={}))[l.ETHEREUM_MAINNET=1]="ETHEREUM_MAINNET",l[l.ETHEREUM_ROPSTEN=3]="ETHEREUM_ROPSTEN",l[l.ETHEREUM_RINKEBY=4]="ETHEREUM_RINKEBY",l[l.ETHEREUM_KOVAN=42]="ETHEREUM_KOVAN",l[l.BINANCE_MAINNET=56]="BINANCE_MAINNET",l[l.BINANCE_TESTNET=97]="BINANCE_TESTNET",l[l.POLYGON_MAINNET=137]="POLYGON_MAINNET",l[l.POLYGON_TESTNET=80001]="POLYGON_TESTNET";var m,h=Object.values(exports.SupportedChainIds).filter((function(e){return"number"==typeof e})),T=((r={})[exports.SupportedChainIds.ETHEREUM_MAINNET]={name:"Ethereum Mainnet",chainId:1,shortName:"eth",chain:"ETH",networkId:1,nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpc:["https://mainnet.infura.io/v3/${INFURA_API_KEY}","wss://mainnet.infura.io/ws/v3/${INFURA_API_KEY}","https://api.mycryptoapi.com/eth","https://cloudflare-eth.com"],faucets:[],explorers:{name:"etherscan",url:"https://etherscan.io",standard:"EIP3091"},infoURL:"https://ethereum.org",logoURL:"/assets/images/chain-logos/ethereum-logo.png",collateralizedContractAddresses:[],collateralFreeContractAddresses:[],revenueSharedNFTRentalsContractAddresses:[],revenueSharedConfiguratorContractAddresses:[],e721ContractAddresses:[],e721BContractAddresses:[],e1155ContractAddresses:[],e1155BContractAddresses:[],wETHContractAddresses:[],daiContractAddresses:[],usdcContractAddresses:[],usdtContractAddresses:[],tUSDContractAddresses:[],utilsContractAddresses:[],subgraphs:{collateralized:"",collateralFree:"",revenueSharedNFTRentals:"",e721:"",e1155:""},moralisDetails:{isSupported:!0,lookupValue:"eth"},chainApiId:"binancecoin",isSupported:!1,isTestnet:!1},r[exports.SupportedChainIds.ETHEREUM_ROPSTEN]={name:"Ethereum Testnet Ropsten",chainId:3,shortName:"rop",chain:"ETH-Testnet",networkId:3,nativeCurrency:{name:"Ropsten Ether",symbol:"ROP",decimals:18},rpc:["https://ropsten.infura.io/v3/${INFURA_API_KEY}","wss://ropsten.infura.io/ws/v3/${INFURA_API_KEY}"],faucets:["https://faucet.ropsten.be?${ADDRESS}"],explorers:{name:"etherscan-ropsten",url:"https://ropsten.etherscan.io/",standard:"EIP3091"},infoURL:"https://github.com/ethereum/ropsten",logoURL:"/assets/images/chain-logos/ethereum-logo.png",collateralizedContractAddresses:[],collateralFreeContractAddresses:[],revenueSharedNFTRentalsContractAddresses:[],revenueSharedConfiguratorContractAddresses:[],e721ContractAddresses:[],e721BContractAddresses:[],e1155ContractAddresses:[],e1155BContractAddresses:[],wETHContractAddresses:[],daiContractAddresses:[],usdcContractAddresses:[],usdtContractAddresses:[],tUSDContractAddresses:[],utilsContractAddresses:[],subgraphs:{collateralized:"",collateralFree:"",revenueSharedNFTRentals:"",e721:"",e1155:""},moralisDetails:{isSupported:!1,lookupValue:""},chainApiId:"binancecoin",isSupported:!1,isTestnet:!0},r[exports.SupportedChainIds.ETHEREUM_RINKEBY]={name:"Ethereum Testnet Rinkeby",chainId:4,shortName:"rin",chain:"ETH-Testnet",networkId:4,nativeCurrency:{name:"Rinkeby Ether",symbol:"RIN",decimals:18},rpc:["https://rinkeby.infura.io/v3/${INFURA_API_KEY}","wss://rinkeby.infura.io/ws/v3/${INFURA_API_KEY}"],faucets:["https://faucet.rinkeby.io"],explorers:{name:"etherscan-rinkeby",url:"https://rinkeby.etherscan.io",standard:"EIP3091"},infoURL:"https://www.rinkeby.io",logoURL:"/assets/images/chain-logos/ethereum-logo.png",collateralizedContractAddresses:[],collateralFreeContractAddresses:[],revenueSharedNFTRentalsContractAddresses:[],revenueSharedConfiguratorContractAddresses:[],e721ContractAddresses:[],e721BContractAddresses:[],e1155ContractAddresses:[],e1155BContractAddresses:[],wETHContractAddresses:[],daiContractAddresses:[],usdcContractAddresses:[],usdtContractAddresses:[],tUSDContractAddresses:[],utilsContractAddresses:[],subgraphs:{collateralized:"",collateralFree:"",revenueSharedNFTRentals:"",e721:"",e1155:""},moralisDetails:{isSupported:!1,lookupValue:""},chainApiId:"binancecoin",isSupported:!1,isTestnet:!0},r[exports.SupportedChainIds.ETHEREUM_KOVAN]={name:"Kovan Testnet",chainId:42,shortName:"KOV",chain:"kovan",networkId:42,nativeCurrency:{name:"Kovan",symbol:"KOV",decimals:18},rpc:["https://kovan.poa.network","http://kovan.poa.network:8545","https://kovan.infura.io/v3/${INFURA_API_KEY}","wss://kovan.infura.io/ws/v3/${INFURA_API_KEY}","ws://kovan.poa.network:8546"],faucets:["https://faucet.kovan.network","https://gitter.im/kovan-testnet/faucet"],explorers:{name:"etherscan-kovan",url:"https://kovan.etherscan.io/",standard:"EIP3091"},infoURL:"https://kovan-testnet.github.io/website",logoURL:"/assets/images/chain-logos/kovan-logo-svg.svg",collateralizedContractAddresses:["0xc4E1142e0dcF1CBdDcD101Bd6C82DB5bDc946C6e"],collateralFreeContractAddresses:["0x0948a02CCf44949C3853Cb087698C91C9E37Dddd"],revenueSharedNFTRentalsContractAddresses:[],revenueSharedConfiguratorContractAddresses:["0x3A92F1c74D4F10b9eb3E12C890E55663F510F8a5"],e721ContractAddresses:["0xD3b55Bf4A849992AA52f2293CDDb493A18b980Dd"],e721BContractAddresses:["0x4EF6d4f83341AAF584DB7599ba7BCB0f29CdC51A"],e1155ContractAddresses:["0xBFBA01C44c6f36EB7f8b6e805c969d1F438fF650"],e1155BContractAddresses:["0xE9397bDf06a56303e0159f1D618Efde7E90dA3A3"],wETHContractAddresses:["0xe74ffdF419f30aD24dDe778d7317Ba7d3BB18f4a"],daiContractAddresses:["0x45793Ad70378a863922706f465eCbC26f4c195f9"],usdcContractAddresses:["0x3ebBC74E7579F800fE8C3d058377b95c06f7f0e1"],usdtContractAddresses:["0xAA92036d1D11f4120E9345E990072e868B48Be7e"],tUSDContractAddresses:["0xeFEfAC77461FF56Ff26F3Db522e42AbEA7aE38b5"],utilsContractAddresses:["0xAe79A95cCeFDEb13584e7595d4FCC8D3cAac352a"],subgraphs:{collateralized:"https://kovan.infy.network/subgraphs/name/infy-collateralized/subgraph",collateralFree:"https://kovan.infy.network/subgraphs/name/infy-collateral-free/subgraph",revenueSharedNFTRentals:"",e721:"https://kovan.infy.network/subgraphs/name/wighawag/eip721-subgraph",e1155:"https://kovan.infy.network/subgraphs/name/amxx/eip1155-subgraph"},moralisDetails:{isSupported:!1,lookupValue:""},chainApiId:"kovan-testnet",isSupported:!1,isTestnet:!0},r[exports.SupportedChainIds.BINANCE_MAINNET]={name:"BSC Mainnet",chainId:56,shortName:"bnb",chain:"BSC",networkId:56,nativeCurrency:{name:"Binance Chain Native Token",symbol:"BNB",decimals:18},rpc:["https://bsc-dataseed1.binance.org","https://bsc-dataseed2.binance.org","https://bsc-dataseed3.binance.org","https://bsc-dataseed4.binance.org","https://bsc-dataseed1.defibit.io","https://bsc-dataseed2.defibit.io","https://bsc-dataseed3.defibit.io","https://bsc-dataseed4.defibit.io","https://bsc-dataseed1.ninicoin.io","https://bsc-dataseed2.ninicoin.io","https://bsc-dataseed3.ninicoin.io","https://bsc-dataseed4.ninicoin.io","wss://bsc-ws-node.nariox.org"],faucets:[],explorers:{name:"bscscan",url:"https://bscscan.com",standard:"EIP3091"},infoURL:"https://www.binance.org",logoURL:"/assets/images/chain-logos/binance-logo.png",collateralizedContractAddresses:["0x4dA60d2646a8ed5461457012f5cd7b87905E9e55"],collateralFreeContractAddresses:["0x858feeb9D751A07aF2D7b5ad7fa996B30261a891"],revenueSharedNFTRentalsContractAddresses:["0xEc12AB0306A3bbDa93aACC2BE931F8A8343bCEA3"],revenueSharedConfiguratorContractAddresses:["0x8F975d55b8b20D6e53264A4730998C14fE5b8C25"],e721ContractAddresses:[],e721BContractAddresses:[],e1155ContractAddresses:[],e1155BContractAddresses:[],wETHContractAddresses:["0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c"],daiContractAddresses:["0x1AF3F329e8BE154074D8769D1FFa4eE058B1DBc3"],usdcContractAddresses:["0xD3b55Bf4A849992AA52f2293CDDb493A18b980Dd"],usdtContractAddresses:["0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56"],tUSDContractAddresses:["0x14016e85a25aeb13065688cafb43044c2ef86784"],utilsContractAddresses:[],subgraphs:{collateralized:"https://api.thegraph.com/subgraphs/name/dudhatparesh/infy-collateralized-bsc",collateralFree:"https://thegraph.com/explorer/subgraph/dudhatparesh/infy-collateral-free-bsc",revenueSharedNFTRentals:"https://api.thegraph.com/subgraphs/name/dudhatparesh/infy-revenue-share-bsc",e721:"",e1155:""},moralisDetails:{isSupported:!0,lookupValue:"bsc"},chainApiId:"binancecoin",isSupported:!0,isTestnet:!1},r[exports.SupportedChainIds.BINANCE_TESTNET]={name:"BSC Smart Chain Testnet",chainId:97,shortName:"bnbt",chain:"BSC-Testnet",networkId:97,nativeCurrency:{name:"Binance Chain Native Token",symbol:"BNB",decimals:18},rpc:["https://data-seed-prebsc-2-s1.binance.org:8545","https://data-seed-prebsc-1-s1.binance.org:8545","https://data-seed-prebsc-1-s2.binance.org:8545","https://data-seed-prebsc-2-s2.binance.org:8545","https://data-seed-prebsc-1-s3.binance.org:8545","https://data-seed-prebsc-2-s3.binance.org:8545"],faucets:["https://testnet.binance.org/faucet-smart"],explorers:{name:"bscscan-testnet",url:"https://testnet.bscscan.com",standard:"EIP3091"},infoURL:"https://testnet.binance.org/",logoURL:"/assets/images/chain-logos/binance-logo.png",collateralizedContractAddresses:[],collateralFreeContractAddresses:[],revenueSharedNFTRentalsContractAddresses:[],revenueSharedConfiguratorContractAddresses:[],e721ContractAddresses:[],e721BContractAddresses:[],e1155ContractAddresses:[],e1155BContractAddresses:[],wETHContractAddresses:[],daiContractAddresses:[],usdcContractAddresses:[],usdtContractAddresses:[],tUSDContractAddresses:[],utilsContractAddresses:[],subgraphs:{collateralized:"",collateralFree:"",revenueSharedNFTRentals:"",e721:"",e1155:""},moralisDetails:{isSupported:!0,lookupValue:"bsc testnet"},chainApiId:"binancecoin",isSupported:!1,isTestnet:!0},r[exports.SupportedChainIds.POLYGON_MAINNET]={name:"Polygon",chainId:137,shortName:"Polygon",chain:"Polygon",networkId:137,nativeCurrency:{name:"Matic",symbol:"MATIC",decimals:18},rpc:["https://polygon-rpc.com/"],faucets:[],explorers:{name:"polygonscan",url:"https://polygonscan.com",standard:"EIP3091"},infoURL:"https://matic.network/",logoURL:"/assets/images/chain-logos/matic-logo-svg.svg",collateralizedContractAddresses:["0x30e1617F74c1E990Cf2af5532026FD58B561b5b4"],collateralFreeContractAddresses:["0x730995e8cF5af41e581cfdCc457630C9700610E6"],revenueSharedNFTRentalsContractAddresses:["0x9C5dA47ED0281aF302ED1E77a1B961ed980d5385"],revenueSharedConfiguratorContractAddresses:["0x4a1BDD3a5BBAb4312432b1b507d67Bce6baC8B22"],e721ContractAddresses:[],e721BContractAddresses:[],e1155ContractAddresses:[],e1155BContractAddresses:[],wETHContractAddresses:["0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619"],daiContractAddresses:["0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063"],usdcContractAddresses:["0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"],usdtContractAddresses:["0xc2132D05D31c914a87C6611C10748AEb04B58e8F"],tUSDContractAddresses:["0x2e1AD108fF1D8C782fcBbB89AAd783aC49586756"],utilsContractAddresses:[],subgraphs:{collateralized:"https://api.thegraph.com/subgraphs/name/dudhatparesh/infy-collateralized-polygon",collateralFree:"https://api.thegraph.com/subgraphs/name/dudhatparesh/infy-collateral-free-polygon",revenueSharedNFTRentals:"https://api.thegraph.com/subgraphs/name/dudhatparesh/infy-revenue-share-polygon",e721:"",e1155:""},moralisDetails:{isSupported:!0,lookupValue:"polygon"},chainApiId:"matic-network",isSupported:!0,isTestnet:!1},r[exports.SupportedChainIds.POLYGON_TESTNET]={name:"Mumbai-Testnet",chainId:80001,shortName:"Mumbai",chain:"Mumbai-TestNet",networkId:80001,nativeCurrency:{name:"Matic",symbol:"MATIC",decimals:18},rpc:["https://rpc-mumbai.matic.today","wss://ws-mumbai.matic.today"],faucets:["https://faucet.matic.network/"],explorers:{name:"mumbai-polygonscan",url:"https://mumbai.polygonscan.com/",standard:"EIP3091"},infoURL:"https://matic.network/",logoURL:"/assets/images/chain-logos/matic-logo-svg.svg",collateralizedContractAddresses:["0xDA0b94C237b435cbeA5Dd5aD44cc6F235aaE5855"],collateralFreeContractAddresses:["0x8f5138FDe08Be9061612086f4bCA472a563544c4"],revenueSharedNFTRentalsContractAddresses:["0x9352a6007F186c11FBC1daBc9fFFFA62Ea9eb9f3"],revenueSharedConfiguratorContractAddresses:["0x418258c4412bC13b3C877374BCE70890d456Cc1e"],e721ContractAddresses:["0x1506aF09A9a0D9179008d5F3E778ba46B76B54bc"],e721BContractAddresses:["0xAe79A95cCeFDEb13584e7595d4FCC8D3cAac352a"],e1155ContractAddresses:["0xd742C9Dd714c6FD0dB880Ed278e7Dc3e472fABb5"],e1155BContractAddresses:["0x3A92F1c74D4F10b9eb3E12C890E55663F510F8a5"],wETHContractAddresses:["0xAA92036d1D11f4120E9345E990072e868B48Be7e"],daiContractAddresses:["0xeFEfAC77461FF56Ff26F3Db522e42AbEA7aE38b5"],usdcContractAddresses:["0xD3b55Bf4A849992AA52f2293CDDb493A18b980Dd"],usdtContractAddresses:["0x4EF6d4f83341AAF584DB7599ba7BCB0f29CdC51A"],tUSDContractAddresses:["0x4bC7EA42aE5E5D4F8Dab60646B247978EEF09888"],utilsContractAddresses:["0xb6A0B7e204E86823eB78689e50a6Ed10931583B5"],subgraphs:{collateralized:"https://api.thegraph.com/subgraphs/name/dudhatparesh/infy-collateralized-mumbai",collateralFree:"https://api.thegraph.com/subgraphs/name/dudhatparesh/infy-collateral-free-mumbai",revenueSharedNFTRentals:"https://api.thegraph.com/subgraphs/name/dudhatparesh/infy-revenue-share-mumbai",e721:"",e1155:""},moralisDetails:{isSupported:!0,lookupValue:"mumbai"},chainApiId:"matic-network",isSupported:!0,isTestnet:!0},r),v=function(){function e(e,n,b){var a;if(this.signer=e,void 0===T[n]||void 0===T[n].collateralizedContractAddresses||T[n].collateralizedContractAddresses.length<=0||void 0===T[n].collateralFreeContractAddresses||T[n].collateralFreeContractAddresses.length<=0)throw new Error("Requested for unsupported chain");a=b===exports.ContractType.COLLATERALIZED?T[n].collateralizedContractAddresses[0]:T[n].collateralFreeContractAddresses[0],this.contract=new t.Contract(a,i,this.signer)}var n=e.prototype;return n.lend=function(){var e=f(b().mark((function e(n,a,f,d,r,s,i,c,o,p){var l;return b().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return l=u({nftStandards:n.map((function(e){return Number(e)})),nftAddresses:a.map((function(e){return String(e).toLowerCase()})),tokenIds:f.map((function(e){return t.BigNumber.from(e)})),lendAmounts:d.map((function(e){return t.BigNumber.from(e)})),maxRentDurations:r.map((function(e){return Number(e)})),minRentDurations:s.map((function(e){return Number(e)})),dailyRentPrices:i.map((function(e){return t.BigNumber.from(e)})),paymentOptions:c,collateralPrices:o.map((function(e){return t.BigNumber.from(t.BigNumber.from(e))})),allowedRenters:p}),e.next=3,this.contract.lend(l.nftStandards,l.nftAddresses,l.tokenIds,l.lendAmounts,l.maxRentDurations,l.minRentDurations,l.dailyRentPrices,l.paymentOptions,l.collateralPrices,l.allowedRenters);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)})));return function(t,n,b,a,f,d,r,s,i,c){return e.apply(this,arguments)}}(),n.rent=function(){var e=f(b().mark((function e(n,a,f,d,r,s){var i;return b().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=u({nftStandards:n.map((function(e){return Number(e)})),nftAddresses:a.map((function(e){return String(e).toLowerCase()})),tokenIds:f.map((function(e){return t.BigNumber.from(e)})),lendingIds:d.map((function(e){return t.BigNumber.from(e)})),rentDurations:r.map((function(e){return Number(e)})),rentAmounts:s.map((function(e){return t.BigNumber.from(e)}))}),e.next=3,this.contract.rent(i.nftStandards,i.nftAddresses,i.tokenIds,i.lendingIds,i.rentDurations,i.rentAmounts);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)})));return function(t,n,b,a,f,d){return e.apply(this,arguments)}}(),n.stopRenting=function(){var e=f(b().mark((function e(n,a,f,d,r){var s;return b().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s=u({nftStandards:n.map((function(e){return Number(e)})),nftAddresses:a.map((function(e){return String(e).toLowerCase()})),tokenIds:f.map((function(e){return t.BigNumber.from(e)})),lendingIds:d.map((function(e){return t.BigNumber.from(e)})),rentingIds:r.map((function(e){return t.BigNumber.from(e)}))}),e.next=3,this.contract.stopRenting(s.nftStandards,s.nftAddresses,s.tokenIds,s.lendingIds,s.rentingIds);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)})));return function(t,n,b,a,f){return e.apply(this,arguments)}}(),n.stopLending=function(){var e=f(b().mark((function e(n,a,f,d){var r;return b().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=u({nftStandards:n.map((function(e){return Number(e)})),nftAddresses:a.map((function(e){return String(e).toLowerCase()})),tokenIds:f.map((function(e){return t.BigNumber.from(e)})),lendingIds:d.map((function(e){return t.BigNumber.from(e)}))}),e.next=3,this.contract.stopLending(r.nftStandards,r.nftAddresses,r.tokenIds,r.lendingIds);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)})));return function(t,n,b,a){return e.apply(this,arguments)}}(),n.claimRentOrCollateral=function(){var e=f(b().mark((function e(n,a,f,d,r){var s;return b().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s=u({nftStandards:n.map((function(e){return Number(e)})),nftAddresses:a.map((function(e){return String(e).toLowerCase()})),tokenIds:f.map((function(e){return t.BigNumber.from(e)})),lendingIds:d.map((function(e){return t.BigNumber.from(e)})),rentingIds:r.map((function(e){return t.BigNumber.from(e)}))}),e.next=3,this.contract.claimRentOrCollateral(s.nftStandards,s.nftAddresses,s.tokenIds,s.lendingIds,s.rentingIds);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)})));return function(t,n,b,a,f){return e.apply(this,arguments)}}(),e}(),A=function(e){function t(t,n){return e.call(this,t,n,exports.ContractType.COLLATERALIZED)||this}return d(t,e),t}(v),g=function(e){function t(t,n){return e.call(this,t,n,exports.ContractType.COLLATERAL_FREE)||this}return d(t,e),t}(v),C=[{inputs:[{internalType:"address",name:"_admin",type:"address"},{internalType:"address",name:"_revenueSharedConfigurator",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{internalType:"uint256",name:"lendAmount",type:"uint256"},{internalType:"uint256",name:"availableAmount",type:"uint256"}],name:"ActiveRenting",type:"error"},{inputs:[],name:"InvalidPortionsSum",type:"error"},{inputs:[],name:"InvalidProtocolFeeReceivers",type:"error"},{inputs:[],name:"LendingEmpty",type:"error"},{inputs:[],name:"LendingIsStopped",type:"error"},{inputs:[],name:"LendingNotEmpty",type:"error"},{inputs:[],name:"NotAllowedToRent",type:"error"},{inputs:[{internalType:"address",name:"caller",type:"address"}],name:"NotAnAdmin",type:"error"},{inputs:[{internalType:"uint8",name:"errorCode",type:"uint8"}],name:"NotLendable",type:"error"},{inputs:[{internalType:"uint8",name:"errorCode",type:"uint8"}],name:"NotRentable",type:"error"},{inputs:[],name:"Paused",type:"error"},{inputs:[{internalType:"uint256",name:"rentAmount",type:"uint256"},{internalType:"uint256",name:"availableAmount",type:"uint256"}],name:"RentAmountExceedsAvailableAmount",type:"error"},{inputs:[{internalType:"uint32",name:"rentDuration",type:"uint32"},{internalType:"uint32",name:"maxRentDuration",type:"uint32"}],name:"RentDurationExceedsMaxRentDuration",type:"error"},{inputs:[],name:"RentingEmpty",type:"error"},{inputs:[],name:"RentingNotEmpty",type:"error"},{inputs:[],name:"ReturningNotAllowed",type:"error"},{inputs:[{internalType:"address",name:"lender",type:"address"},{internalType:"address",name:"msgSender",type:"address"}],name:"StopperNotLender",type:"error"},{inputs:[{internalType:"address",name:"_address",type:"address"},{internalType:"uint8",name:"_errorCode",type:"uint8"}],name:"ZeroAddress",type:"error"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"isERC721",type:"bool"},{indexed:!0,internalType:"address",name:"lenderAddress",type:"address"},{indexed:!0,internalType:"address",name:"nftAddress",type:"address"},{indexed:!0,internalType:"uint256",name:"tokenId",type:"uint256"},{indexed:!1,internalType:"uint256",name:"lendingId",type:"uint256"},{indexed:!1,internalType:"uint32",name:"maxRentDuration",type:"uint32"},{indexed:!1,internalType:"uint256",name:"upfrontRentFee",type:"uint256"},{indexed:!1,internalType:"uint256",name:"lendAmount",type:"uint256"},{components:[{internalType:"address[]",name:"revenueShareAddresses",type:"address[]"},{internalType:"uint8[]",name:"revenueSharePortions",type:"uint8[]"}],indexed:!1,internalType:"struct IRevenueSharedNFTRentals.RevenueShareInfo",name:"revenueShareInfos",type:"tuple"},{indexed:!1,internalType:"address[]",name:"allowedRenters",type:"address[]"},{indexed:!1,internalType:"uint8",name:"paymentOption",type:"uint8"}],name:"Lend",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"renterAddress",type:"address"},{indexed:!0,internalType:"uint256",name:"lendingId",type:"uint256"},{indexed:!0,internalType:"uint256",name:"rentingId",type:"uint256"},{indexed:!1,internalType:"uint256",name:"rentAmount",type:"uint256"},{indexed:!1,internalType:"uint32",name:"rentDuration",type:"uint32"},{indexed:!1,internalType:"uint32",name:"rentedAt",type:"uint32"}],name:"Rent",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"lendingId",type:"uint256"},{indexed:!0,internalType:"address",name:"receiver",type:"address"},{indexed:!0,internalType:"address",name:"paymentToken",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"ShareRevenue",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"lendingId",type:"uint256"},{indexed:!1,internalType:"uint32",name:"stoppedAt",type:"uint32"}],name:"StopLend",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"rentingId",type:"uint256"},{indexed:!1,internalType:"uint32",name:"stoppedAt",type:"uint32"}],name:"StopRent",type:"event"},{inputs:[],name:"admin",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"deployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"feePortions",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"feeReceivers",outputs:[{internalType:"address payable",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_nfts",type:"address"},{internalType:"uint256",name:"_tokenIds",type:"uint256"},{internalType:"uint256",name:"_lendingIds",type:"uint256"}],name:"getLendingInfo",outputs:[{components:[{internalType:"enum NFTStandard",name:"nftStandard",type:"uint8"},{internalType:"address payable",name:"lender",type:"address"},{internalType:"uint32",name:"maxRentDuration",type:"uint32"},{internalType:"uint256",name:"upfrontFee",type:"uint256"},{internalType:"uint256",name:"lendAmount",type:"uint256"},{internalType:"uint256",name:"availableAmount",type:"uint256"},{components:[{internalType:"address[]",name:"revenueShareAddresses",type:"address[]"},{internalType:"uint8[]",name:"revenueSharePortions",type:"uint8[]"}],internalType:"struct IRevenueSharedNFTRentals.RevenueShareInfo",name:"revenueShareInfos",type:"tuple"},{internalType:"address[]",name:"allowedRenters",type:"address[]"},{internalType:"uint8",name:"paymentOption",type:"uint8"},{internalType:"bool",name:"stopped",type:"bool"}],internalType:"struct IRevenueSharedNFTRentals.LendingInfo",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_nfts",type:"address"},{internalType:"uint256",name:"_tokenIds",type:"uint256"},{internalType:"uint256",name:"_rentingIds",type:"uint256"}],name:"getRentingInfo",outputs:[{components:[{internalType:"address payable",name:"renter",type:"address"},{internalType:"uint32",name:"rentDuration",type:"uint32"},{internalType:"uint32",name:"rentedAt",type:"uint32"},{internalType:"uint256",name:"rentAmount",type:"uint256"}],internalType:"struct IRevenueSharedNFTRentals.RentingInfo",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"enum NFTStandard",name:"nftStandard",type:"uint8"},{internalType:"address",name:"nft",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"},{internalType:"uint256",name:"lendAmount",type:"uint256"},{internalType:"uint256",name:"upfrontFee",type:"uint256"},{internalType:"uint32",name:"maxRentDuration",type:"uint32"},{components:[{internalType:"address[]",name:"revenueShareAddresses",type:"address[]"},{internalType:"uint8[]",name:"revenueSharePortions",type:"uint8[]"}],internalType:"struct IRevenueSharedNFTRentals.RevenueShareInfo",name:"revenueShareInfo",type:"tuple"},{components:[{internalType:"address[]",name:"allowedRenters",type:"address[]"}],internalType:"struct IRevenueSharedNFTRentals.AllowedRenters",name:"allowedRenters",type:"tuple"},{internalType:"uint8",name:"paymentOption",type:"uint8"}],internalType:"struct IRevenueSharedNFTRentals.LendingRequest[]",name:"lendingRequests",type:"tuple[]"}],name:"lend",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"lendingId",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256[]",name:"",type:"uint256[]"},{internalType:"uint256[]",name:"",type:"uint256[]"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC1155BatchReceived",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC1155Received",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC721Received",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"_nfts",type:"address[]"},{internalType:"uint256[]",name:"_tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"_lendingIds",type:"uint256[]"},{internalType:"uint32[]",name:"_rentDurations",type:"uint32[]"},{internalType:"uint256[]",name:"_rentAmounts",type:"uint256[]"}],name:"rent",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"rentingId",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"revenueSharedConfigurator",outputs:[{internalType:"contract IConfigurator",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"revokeOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_newAdmin",type:"address"}],name:"setAdmin",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"_paused",type:"bool"}],name:"setPaused",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address payable[]",name:"newFeeReceivers",type:"address[]"},{internalType:"uint8[]",name:"newFeePortions",type:"uint8[]"}],name:"setProtocolFeeReceivers",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address[]",name:"newRentStoppers",type:"address[]"}],name:"setRentStoppers",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_newRevenueSharedConfigurator",type:"address"}],name:"setRevenueSharedConfigurator",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address[]",name:"newRewardPayers",type:"address[]"}],name:"setRewardPayers",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address[]",name:"_nfts",type:"address[]"},{internalType:"uint256[]",name:"_tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"_lendingIds",type:"uint256[]"},{internalType:"uint256[]",name:"_revenueAmounts",type:"uint256[]"},{internalType:"address[]",name:"_renters",type:"address[]"},{internalType:"address[]",name:"_revenueTokenAddress",type:"address[]"}],name:"shareRevenue",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"enum NFTStandard[]",name:"_nftStandards",type:"uint8[]"},{internalType:"address[]",name:"_nfts",type:"address[]"},{internalType:"uint256[]",name:"_tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"_lendingIds",type:"uint256[]"}],name:"stopLending",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address[]",name:"_nfts",type:"address[]"},{internalType:"uint256[]",name:"_tokenIds",type:"uint256[]"},{internalType:"uint256[]",name:"_lendingIds",type:"uint256[]"},{internalType:"uint256[]",name:"_rentingIds",type:"uint256[]"}],name:"stopRenting",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"support